既然你想要做異步任務,使線程睡眠可能會凍結用戶界面。即使沒有,它仍然是非常糟糕的做法。
所以第一件事 - 你必須做一個單獨的線程。和Asynctask最適合它。如果它不是在一個單獨的線程上運行(如你所說,它不是Asynctask),而是某些代碼2(如你所說,它不是Asynctask)。但是,如果它運行在一個單獨的線程上(它應該是) - 。
你可以簡單地在some_function()的末尾調用「// Some code 2」。
OR
如果你不想這樣做,嘗試像這個 -
首先將界面 -
public static interface On_some_function_complete{
void onComplete(what ever parameters you want);
}
把這個接口的實例在some_function()
作爲參數,您可以定義它並在函數結尾調用onComplete方法,例如 -
void some_function(On_some_function_complete arg_on_complere){
//what ever stuff your code dose
arg_on_complere.onComplete(/*with required arguments*/);
}
現在撥打電話一樣 -
void A()
{
//Some Code 1
some_function(new On_some_function_complete{
@Override
public void onComplete(Bitmap result) {
//Some code 2
}
});
}
OR
你必須有一些功能,你可以覆蓋處理的競業行爲
你有任何的代碼在嘗試的睡覺? – ZombieCode
所需秒數的線程休眠的通用代碼。 –
[閱讀](http://stackoverflow.com/questions/1036754/difference-between-wait-and-sleep) – Skynet