2009-09-25から1日間の記事一覧
http://rayerd.plala.jp/pukiwiki/ingwiki/index.php?C%2FC%2B%2B%E3%81%AB%E7%96%B2%E3%82%8C%E3%81%9F%E4%BA%BA%E3%81%AED%E8%A8%80%E8%AA%9E2.0 pure, synchronized,synchronizedメンバ関数,shared型修飾子についての記述を追加.
テンプレートだと失敗するのは仕様? それは今後の課題で,将来的にはテンプレート関数もオーバーロード可能になるそうです. なんかソースのコメントに書いてあるとか.
import std.stdio; import core.thread; class SharedData { private int v; // privateに変更 public synchronized void increase() { int a = v; for(int i; i<1000000; i++){} // wait v = a + 1; } public int value() const // constをなくすとエラー(…
import std.stdio; import core.thread; class SharedData { public int v; public void increase() { // synchronizedだけだとグローバルなmutexが作成されるので, // 同期する必要がない他のsynchronizedブロックともお互いに処理待ちが発生してしまう sy…
import std.stdio; import core.thread; class SharedData { public int v; public synchronized void increase() // 同期関数に変更 (2) { // 同期関数は次のようなsynchronized(this)と等価 (1) //synchronized(this){ int a = v; for(int i; i<1000000; i…