- 479 名前:デフォルトの名無しさん mailto:sage [2010/06/14(月) 01:01:27 ]
- マルチスレッドで教えてください。
ソケットプログラミングで、受信スレッドがキューにデータを溜めて、 メインスレッドは順次データを読み出して処理するというプログラムを書いています。 メインスレッドはキューにデータが無ければ受信するまで待機したいのですが、 一般的にどう実装するものでしょうか? とりあえず作った受信スレッドは、 Monitor.Enter(obj); 受信ループ キューに格納 Monitor.Exit(obj); Monitor.Enter(obj); ループEnd Monitor.Exit(obj); 受信の都度Exitしてメインスレッドに所有権を明け渡しています。 動作には問題なさそう?なんですけど、なんかスマートじゃないというか。。。
|

|