Android執行緒操作類(暫停 重新開啟 停止)

2021-08-27 19:11:45 字數 1272 閱讀 4452

場景:

在程式中如果需要在後台長時間做一件事情,比如聯網獲取資料等操作,就要用到執行緒。

但為了提高使用者體驗,有以下幾點需要注意:

1、程式可見時執行緒開始執行;

2、程式不可見時執行緒暫停;

3、程式退出時停止執行緒;

public class netutil2 extends thread

private static netutil2 single = null;

public synchronized static netutil2 getinstance()

return single;

}public synchronized void addnewsbrief(newsbrief newsbrief)

public void setobtaindatalistener(int channelid, iobtaindata iod)

}public void setcurrentpage(int page)

/*** 暫停執行緒

*/public synchronized void onthreadpause()

/*** 執行緒等待,不提供給外部呼叫

*/private void onthreadwait()

} catch (exception e)

}/**

* 執行緒繼續執行

*/public synchronized void onthreadresume()

/*** 關閉執行緒

*/public synchronized void closethread() catch (exception e)

}public boolean isclose()

public void setclose(boolean isclose)

@override

public void run()

}if (null == newsbrief)

string reslut = getnewscontent(newsbrief);

if (!"-1".equals(reslut))

synchronized (looplist)

} else

}try catch (interruptedexception e)

} else }}

}

注意:執行緒的暫停用ispause控制,說白了其實就是不讓執行緒進入wait狀態;

android執行緒及非同步操作

現在完成乙個計數任務,從1計到100,在textview中顯示進度。如果把這些迴圈加的操作放在oncreat 方法中,肯定會出現阻塞。利用asynctask類在後台進行操作,可以使主ui執行緒順暢進行下去。這個類裡主要涉及到3個方法,doinbackground onprogressupdate o...

android關於多執行緒操作sqlite知識點

1.關於getwriteabledatabase 和getreadabledatabase 的真正作用 getwriteabledatabase 其實是相當於getreadabledatabase 的乙個子方法,getwriteabledatabase 是只能返回乙個以讀寫方式開啟的sqliteda...

Thread類執行緒常用操作

執行緒是通過擴充套件 thread 類建立的。擴充套件的 thread 類呼叫 start 方法來開始子執行緒的執行。下面的程式演示了這個概念 class threadcreationprogram static void main string args 當上面的 被編譯和執行時,它會產生下列結果...