最近立て続けにレースコンディション問題に遭遇したのでメモ。 レースコンディション(競合状態)とは、複数のプロセスやスレッドが共有リソースに対して何らかの操作をする際に、処理のタイミングによって結果が異なってしまう状態のこと。よくトランザクションの解説の際に銀行口座の例として紹介されるおなじみのやつです。 今回は、アプリケーションの書き方によって発生するレースコンディションと、MySQL のテーブル定義時の制約不足で発生するレースコンディションについてそれぞれ紹介したいと思います。 どちらの場合も共有リソースはDB で、条件を満たすと意図しない形でデータが保存されてしまいます。 サンプルアプリケーション サンプルアプリケーションとして、簡単なアクセス解析機能付きの短縮URL ツールを考えます。 アクセス解析機能として、以下のような機能を持つとしましょう。 URL毎 にクリック数を計測できる
単純に JavaScript で音が鳴らせるのが面白いと思って最近色々調べていたので、 今まで調べたところを書いておきます。 現在、JavaScript から音声を扱うには 3 つの方法があると理解してます。 (他にもあったらコメント欄とかで教えてください) QuickTime プラグイン Flash + ExternalInterface + Sound オブジェクト audio タグ QuickTime プラグイン embed タグで埋め込まれた QuickTime プレイヤーに JavaScript からアクセスする。 特徴 QuickTime がサポートしている形式は全て利用できるはず (MP3 / WAVE / MIDI 等)。逆に ogg とか QuickTime が対応していない形式は再生できない embed タグの src タグに data スキームでバイナリデータを埋め込
One of the key values at Facebook is to move fast. For the past six years, we have been able to accomplish a lot thanks to rapid pace of development that PHP offers. As a programming language, PHP is simple. Simple to learn, simple to write, simple to read, and simple to debug. We are able to get new engineers ramped up at Facebook a lot faster with PHP than with other languages, which allows us t
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く