まず直列実行するプログラムを書く 1秒待つコマンド 2秒待つコマンド 3秒待つコマンド 上記を順番に実行していくプログラムを main.go の中身を書く。 つまり、合計で6秒かかってしまう。 package main import ( "log" "time" ) func main() { log.Print("started.") // 1秒かかるコマンド log.Print("sleep1 started.") time.Sleep(1 * time.Second) log.Print("sleep1 finished.") // 2秒かかるコマンド log.Print("sleep2 started.") time.Sleep(2 * time.Second) log.Print("sleep2 finished.") // 3秒かかるコマンド log.Print("sleep3
複数のCPUを使うマルチスレッドプログラムが簡単に 書けるのがgolangの特徴の一つなのでやってみたが、1CPUしか100%にならない。 1つのCPUしか使われない package main import ( "fmt" "sync" "time" ) func main() { fmt.Println("start") var wg sync.WaitGroup for _, a := range []string{"1", "2"} { wg.Add(1) go func(str string) { i := 0 fmt.Println("I'm " + str) time.Sleep(1) // 時分割なので2番目が開始するまで待つ for { i++; } wg.Done() }(a) } wg.Wait() fmt.Println("end") } $ go run calc.
はじめに この記事で使用している環境 OSはMac OS X Yosemite MonoDevelopのバージョンは 5.9.6 MonoDevelopのバージョンは、メニューの MonoDevelop-Unity -> About MonoDevelop-Unityで確認できます。 Unity5系の最新版に同梱されているもの。 (事情があって古いUnityをお使いの方も、MonoDevelopのみ最新を使うという事も可能ですので、ぜひお試しを。) Source解析 メニューの MonoDevelop-Unity -> Prefarences... で環境設定画面をたちあげ。 Text Editor -> Source Analysis と進み、 Enable source analysis of open files にチェックを入れる。 エディター右側にバーが表示され、改善の提案箇所が
こんにちは。Airシリーズ開発チームでiOSの開発リードを担当している永井です。 この度、Airレジから予約台帳機能を切り出して、Airレジとレストランボードの2つのアプリとして新たに5/10にリリースしました。 iPad版・iPhone版合わせて181,175行あったAirレジですが、今回内部的にもObjective-CからSwiftに全面的に書き換えています。 まだまだリファクタリングしていきたい課題はありますが、コード行数は70%も減り(つまり元々の行数から30%になりました)、SonarQubeで示される技術的負債も500dから21dに減り、かなり成功したと言って良いのではないかと思っています。 今回の取り組みの中で、良かったこと・再検討したいことがいろいろ発見できました。それらについてまとめてみるので、これからSwift採用を検討している方々の参考になれば幸いです。 取り組みのポ
HDMIポート x1 高品質4Kディスプレイに接続できます。・5Gb/sのUSB3.0ポート x3 ・PCに接続しなくても、iPhone, iPad等のUSBデバイスを充電できるスタンドアローン充電機能 デュアルThunderboltポートで、6台のThunderboltデバイスのデイジーチェーン接続が可能です。・高速なeSATA6Gポート x2 ・ギガビット・イーサネットポートの接続でスピードアップ。・Audio InとAudio Outポート搭載。マイクやヘッドフォンを接続できるためとても便利! ソフトウェアのボタン一押しで、すべての周辺機器を容易に接続解除することができます。・縦置きまたは横置きに設置できる汎用性の高いデザイン ・放熱効果のある100%アルミニウム構造 システム要件:Thunderbolt ポート搭載PC、Mac OS X 10.8.4 以降、Windows 7 &
iPhoneアプリでUIを作るためのTipsとContainerView・UIPageViewControllerを使ったサンプル紹介UIDesigniOSSwiftSwift2.2 はじめに 昨年の投稿の中で、iOSアプリでも特にメディア系のアプリよくあるようなUIを実現した簡易サンプルに関する説明をしました。(まだまだ拙い記事ながら100ストック以上していただき本当に感謝しています。) メディア系アプリでよくあるUIを実現した簡易サンプル ある程度複雑なUIを実現するためにはライブラリを使う方が開発工数や時間の短縮につながることが多いですが、ライブラリに対してカスタマイズを施したい場合や一部分の機能や動きだけを再現できていればよい場合には、UIを構成しうるクラスに対する理解や使い方をある程度知っておく必要があります。 今回は以前に作成したサンプルにAutoLayout対応をさせたものに
Linuxコマンドで、sar (System Admin Reporter) というCPUやメモリ、ディスクなどの使用率を時間ごとに一覧表示してくれる便利なものがあります。サーバーに負荷がかかっていないかとか、何時何分頃に負荷が高いのかとか一目でわかる優れもの。 使い方は簡単で、sarと打つだけで、本日の分が10分ごとに一覧で表示されます。 # sar ※「sar コマンドが見つかりません。」と出たら、以下のパッケージをインストール # yum install sysstat コマンドオプションを付ければ、もっと詳細に確認できる。 # sar -A 全情報表示 # sar -q loadaverage # sar -n DEV 送信/受信パケットに関する情報 # sar -n EDEV エラーパケットに関する情報 # sar -u CPUの利用状況。 # sar -b ディスクI/Oの使用
世のインフラエンジニアの方々は、何らかの形で利用しているソフトウェアのセキュリティ情報を日々チェックしていると思います。しかし、利用するソフトウェアが増えてくると全部のチェックはなかなか難しいのではないでしょうか。 そんな中最近Amazon Inspectorがプレビューから一般利用開始となり、注目されている方もいると思います。そういったツールが様々出る中で、最近Vulsというものを知ったので試してみたいと思います。 Vulsとは Amazon Inspectorとの違い go-cve-dictionaryについて 実際に使ってみる 検証環境のバージョン Vuls server scan対象サーバ 事前準備 slack通知を試す TUI(Terminal-Based User Interface)を試す OSパッケージ以外もチェックする まとめ Vulsとは github.com scan
ゲームを作っているうちに、何か重い的な事もあるかもしれません。そんな時、プロファイラを使用して重い部分を発見・改善する必要があります。 Unityの標準プロファイラはXcodeのInstrumentsよりも精度で劣りますが、サクっと確認する上では結構使い勝手の良い機能です。あとWindowsでも動きます。 今回はこのプロファイラを使用して、パフォーマンスのボトルネックを探す方法についてメモします。今回は「追う方法」についてです。 パフォーマンスの現状を知る CPU負荷の全体像を知る フレーム落ちするような処理の理由を知る 処理に時間がかかっている所を探す DeepProfileとProfiler.BeginSampleの使い分け Deep Profile Profile.BeginSample/EndSample 関連 パフォーマンスの現状を知る まずは現状のパフォーマンスを把握する所から
今回は、音楽制作の作業工程の話。 時間がかかってしまう仕事の多くは、発注者がこちらの作業行程を把握できてなくて起こることが多いように感じます。 作業行程を把握し、「前の行程に戻さない」「先の行程でやることを指示しない」。 この2つがなくなるだけで制作までの時間も早くなり、さらには成果物の質も上がります。 特に一度決定されたはずの行程に戻る事は、それまでやってきたことが無駄になり、時間がかかるだけでなく、制作側のテンションもめちゃくちゃ下がります。 「前の行程に戻さない」というのは、例えば大工さんだったら、家を建て始めてから「設計を変えてください」と言うような感じでしょうか。写真や映像でも、編集に入った段階での撮り直しは厳しいでしょうし、イラストでも、色塗りの段階で構図を変えることは難しいと思います。 そんなふうに、1度決定すると、戻るのに多くの労力がかかる行程の区切りというものがあります。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く