私はthreadExecutorのobjecctsを2つ持っていると仮定して待機を実行したい、そのobjecctに通知することができます。ここでどのように実装するには、Javaでthreadexecutorで通知する
答えて
はJavaでThreadExecutorで通知を待つの使用例である:
キーワードは排他的アクセスのために使用されているが、同期
public class ExecutorServiceTest { /** * @param args the command line arguments */ public static void main(String[] args) { ExecutorService executor = Executors.newFixedThreadPool(2); ThreadB threadB = new ThreadB(); ThreadA threadA = new ThreadA(threadB); executor.execute(threadA); executor.execute(threadB); executor.shutdown(); while (!executor.isTerminated()); System.out.println("Finished all threads"); } static class ThreadA extends Thread { private final ThreadB waitThread; public ThreadA(ThreadB waitThread) { this.waitThread = waitThread; } @Override public void run() { synchronized (waitThread) { try { waitThread.wait(); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("B Count Total : " + waitThread.getCount()); for (int i = waitThread.getCount(); i < 200; i++) { System.out.println("A Counting " + i); } } } } static class ThreadB extends Thread { private int count = 0; @Override public void run() { synchronized (this) { while (count < 100) { System.out.println("B Counting " + count); count++; } notify(); } } public int getCount() { return count; } } }
。
メソッドを同期させるには、単にsynchronizedキーワードをその宣言に追加します。同じオブジェクト上に同期メソッドを2回呼び出すと、相互にインターリーブすることはできません。
同期のステートメントは、固有ロックを提供するオブジェクトを指定する必要があります。
待機()
をいくつかの他のスレッドが入るまでモニターを放棄し、スリープ状態に入るために、呼び出し元のスレッドを伝えます同じモニターと呼び出しnotify()。
)(通知同じオブジェクトを待機と呼ばれる最初のスレッド()を起動します。
私はこの方法を知っていますが、Executorを使って行うことができます –
@pankajlal答えを更新しました。ThreadExecutorを使って待機して通知してください –
ありがとう –
- 1. どのように私はdjangoでリアルタイム通知を実装できますか?
- 2. Java WebサービスでGoogleプッシュ通知を実装する方法は?
- 3. BLEで通知を実装する
- 4. Railsで通知を実装する
- 5. facebookをcakephpの通知のように実装する方法は?
- 6. iPhone:facebookのようなiPhoneでプッシュ通知を実装する方法は?
- 7. ウェブサービス通知 - どのJava実装をお勧めしますか?
- 8. アイコン/イメージのような通知を実装する方法
- 9. nodejs mongodbにSOのような通知システムを実装する方法は?
- 10. 希望のviewControllerに通知する通知を受け取るにはどうすればよいですか?
- 11. Q通知と通知の実装
- 12. Thread Executorと通知でCallableを簡単に実装する
- 13. ポルリングなしでアンドロイドモバイルデバイスにパブリッシュサブスクライブプッシュ通知を実装する方法
- 14. facebookはリアルタイム通知をどのようにして、どのように私のWebサイトに実装することができますか?
- 15. どのようにasp.net mvcでdatatablesを実装するには?
- 16. これはどのように実装するのですか?
- 17. EclipseでAndroidベースのFirebase通知を実装する方法は?
- 18. サーバーはどのようにモバイルアプリに通知できますか?
- 19. どのように表示するかを通知するヘッドアップ通知
- 20. 設定 - >通知の下に通知を設定するにはどうすればよいですか?
- 21. どのように実装するPushCacheFilter
- 22. ServerSocketはアンドロイドプッシュ通知を実装するのに良いアイデアですか?
- 23. Jmeterで通知メールを実装する方法は?
- 24. サービスに通知を実装する方法は?
- 25. この通知はどのように有効ですか?
- 26. サブスクリプションベースの通知の実装
- 27. どのようにJavaでの検索機能を実装する
- 28. UrbanAirship通知Androidの実装
- 29. 通知キューの実装
- 30. asp.net - ユーザー通知の実装
「threadExecutor」はどういう意味ですか?あなたは "ThreadPoolExecutor"を参照していますか? ExecutorService?関連するコードを表示し、より多くの背景情報を与えることができますか? –
@HovercraftFullOfEels offcourse –