私の現在のコードはプロデューサのコンシューマの質問に答えていますが、別の方法で実装したいと思います。私はグローバル変数を使用してバッファスタックのカウントを追跡したくありません。私の思考プロセスは何ですか? typedef int semaphore;
semaphore mutex, full, empty;
int count = 0;
union semun {
デフォルトのコンストラクタを使用してTPL BufferBlockを構築する場合、DataFlowBlockOptionsは無制限ですか?つまり、BufferBlockのBoundedCapacityは何ですか? As stated in this SO answerの場合、建設後にBufferBlockの値を照会も変更もできません。
私は、1つのスレッドがメッセージをVectorに入れ、もう1つがメッセージをVectorから取り除く、Producer/Consumerの問題の解決策を作成しようとしています。 import java.util.Vector;
public class Producer implements Runnable {
static final int MAXQUEUE = 5;