我所創建的處理程序到達的handleMessage(),handler.sendMessage()是不是在android系統
public final Handler handlerPositionTest = new Handler() {
public void handleMessage(Message msg) {
Log.i(TAG, "handleMessage------------reached");
//MyCode here
}
};
另外我有一個通用的事件偵聽器接收事件的細節,
private GenericEventListener PositionStatusChangedListener = new GenericEventListener() {
public void eventTriggered(Object sender, Event event) {
Log.i(TAG, "Event triggered here------------");
Log.i(TAG, "Event is not null------------:"+event);
Log.i(TAG, "hanlder------------:"+handlerPositionTest);
Message msg = handlerPositionTest.obtainMessage();
msg.what = 2;
msg.obj = e;
handlerPositionTest.sendMessage(msg);
}
};
如果我連續觸發事件,則sendMessage()方法在處理程序中的handleMessage()方法沒有達到幾秒鐘,並且它也丟失了該事件消息。如果我在幾秒鐘後嘗試它, rks正確,我的意思是它到達handleMessage()。
我不清楚重現此問題的場景。它隨機發生。
如果你們對這個問題有什麼想法,請留下評論。
在此先感謝。
進程的詳細信息,我看不出有任何代碼來啓動處理程序到另一個線程。你在UI線程上工作繁重嗎? – mach 2015-02-12 06:57:21
是的,我知道這可能導致沉重的工作。但與我目前的東西有任何關係? – Srinivasan 2015-02-12 06:59:51