程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> service-Service中線程的唯一實例

service-Service中線程的唯一實例

編輯:編程綜合問答
Service中線程的唯一實例

我在service中初始化一個新的Thread。但是當我重啟service時,新的被創建了,同時系統也崩潰了,因為我使用了照相機功能。如何讓線程中只有一個實例呢?
當關閉在線程中創建的service時。線程也同時被關閉嗎?

最佳回答:


你應該使用一個lock或者一個靜態變量:

private static boolean isThreadRunning;

在你的service裡寫入以下方法:

if(isThreadRunning)
   return;

Thread t=new Thread(new Runnable(){

protected void run(){
   isThreadRunning=true;
   while(yourcondition){
     //thread代碼
   }
   isThreadRunning=false;
   //在這個個線程結束後,你想啟動另一個線程,你應該在這貼出信息,來啟動另外一個線程    }

});
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved