關於Java中線程取值並返回的方法


       如何讓一個線程不斷跑起來,並且在取到值的時候能返回值而線程能繼續跑呢?

       我們都知道可以用Callable接口獲得線程的返回值,或者觸發事件監聽來操作返回值,下面我將介紹另一種方法。

 

 1 public abstract class Test implements Runnable {
 2     public String A;
 3 
 4     //開啟線程
 5     public void run() {
 6         while(true) {
 7             //此處寫該方法的邏輯代碼
 8             
 9             //listen()方法操作取得值A
10             listen(A);
11             
12         }
13 
14     }
15 
16     //定義一個抽象方法listen()
17     public abstract void listen(String A);
18 
19 }

 

       這樣,線程取到值將存放在抽象方法listen()里,並且線程也將一直跑起來而不會停止。

       當我們需要用到這個值時,只需要重寫listen()方法就可以啦。

 1 public class Main {
 2 
 3     public static void main(String[] args) {
 4         Thread thread = new Thread(new Test() {
 5             
 6             @Override
 7             public void listen(String A) {
 8                 // TODO Auto-generated method stub
 9                 
10             }
11         });
12         thread.start();
13     }
14 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM