スレッドの勉強をしています。
スレッドの作成・実行には
1.Threadクラスのサブクラスを定義し、start()メソッドの使用
2.Runnableインタフェースを実装し、start()メソッドの使用
3.ExecutorServiceの使用(Executorインタフェースのexecute()メソッドの使用)
の3通りがあるかと思います(ほかにもあるのかな?)。
これら3通りの違いについてわからないことがあります。
「1・2」については、排他制御(Synchronized)、同期制御(wait(),notify(),notifyAll())のサンプルコードが参考書(JavaSE Gold)には掲載されています。
「3」については、掲載されていませんが、排他制御・同期制御を行う機会はないと理解してよろしいのですか?
また、「1・2」と「3」の違いは、
・明示的にスレッドを作成する代わりに使用。
(new Thread(new(RunnableTask())).start()を呼び出す代わりに、execute()メソッドの使用
のみかとおもいますが、他に何かあるのですか?
抽象的な質問で申し訳ございませんがご教授よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/10/23 20:45