looper

    2熱度

    2回答

    我有一個生產者 - 消費者的情況,我想在兩個機制之間做出決定來實現它。這是一個音頻錄製/編碼案例:製片人連續調查設備麥克風以獲取錄製的音頻,並且當音頻樣本可用時,將該樣本傳遞給作爲編碼器的消費者,以進行編碼和保存。 兩種可用的機制是:與隊列 兩個線程生產的傳遞消息給消費者。 或者,作爲消費者的處理程序,其中消息由生產者發佈,當消息可用時。 但是,我不知道哪一個更有效: 如果兩個線程都與隊列使用,那

    3熱度

    1回答

    我試圖讓循環線程工作,但儘管所有嘗試它崩潰。我沒有使用HandlerThread類,因爲我在線程中做了很多與802.11相關的東西,併發布了帶有大量重複代碼的Runnables,這似乎不是正確的方式。 這裏彎針線類的骨架: public class WiFiScanner extends Thread { Looper mLooper; Handler mHandler;

    1熱度

    2回答

    今天我讀了一些關於Handler & Looper如何協同工作的博客和源代碼。 根據我所瞭解的情況,我們可以通過使用ThreadLocal魔法在每個線程上只有一個Looper。通常Handler是在主線程中啓動的,否則您必須在單獨的線程上手動啓動或說出Looper,然後將其循環。 class LooperThread extends Thread { public Handler mHa

    0熱度

    1回答

    我想我可能會意外地打開了一些我並未打算在Eclipse中進行設置的設置。我正在開發一款安卓遊戲,並且在遊戲邏輯中,當某些事件發生時,我會向主要活動發送消息以顯示某些內容。 我有以下類別: public class GameMessageHandler extends Handler { public static final int DO_SOMETHING = 0; pr

    0熱度

    2回答

    我想在android中實現一個REST接口,我需要一個線程在後臺發送「我活着」消息到一個IP地址。要做到這一點,我創建了一個線程調用RestPostThread在後臺運行,而我在我的UI線程中做東西。 問題是,在發送第一條消息到RestPostThread後,我不能退出活套或用另一個IP或其他東西發送不同的消息給它。 下面是用戶界面和RestPostThread兩個密碼: public class

    1熱度

    1回答

    我正在一個網站上工作,我必須實現一個圖像傳送帶。我的選擇落在looper.js上,因爲它簡單輕便。 但我在codeigniter有問題: - 我導入了樣式表。 - 我導入了JavaScript文件。 - 旋轉木馬的作品。 但是,當我想實現控件時出現問題,因爲我有一個問題不能識別「prev」和「next」。 首先,不要放箭頭,然後如果我點擊它將我帶到旋轉木馬div而不是更改幻燈片。 這裏是我的實現代

    1熱度

    1回答

    簡介:我有一個通過USB連接連接到android設備的IOIO-OTG板。我的IOIO-OTG板應該在連接時啓動一個活套,但是這似乎不會發生。 我相信它似乎沒有發生的唯一原因是因爲當我實現片段到類中它不會啓動活套,但是如果我只是使用常規IOIOActivity而不是IOIOFragmentActivity(我創建) ;它一切正常。但是,我不能使用片段。 如果有人對這個問題有任何想法可以阻止我的內部

    2熱度

    2回答

    我有一個運行無限的任務的子線程。我想(1)不斷地將數據發送回UI線程,(2)偶爾向子線程發送數據(對應於按鈕)以暫停/繼續無限任務。我的問題是,子線程卡在循環中,意味着任務不執行。 我的問題是這樣的:如何讓子線程從UI線程接收消息而不阻塞無限任務? 這是我到目前爲止: 對於任務(1),我在我的UI線程中有一個處理程序,它的工作原理和子線程中的一個無限循環,它發送一條消息,它本身起作用。 在UI線程

    0熱度

    1回答

    我想在onCreateView方法的PlanetFragment類的onPageFinished方法中使用處理程序。但我得到looper.prepare()錯誤。請幫忙。還請告訴是否有更好的方法來使用進度條。 public class MainActivity extends Activity { private DrawerLayout mDrawerLayout; private Lis

    0熱度

    1回答

    我正在編寫一個Android應用程序,它從SQLite Database中讀取數據,然後在下一個屏幕上顯示數據。每當我對數據庫進行查詢時,都會收到一條錯誤消息,說明主線程正在做太多的工作。 然後我把我的查詢在一個新的主題: (new Thread() { public void run() { Looper.prepare();