opt
This commit is contained in:
@@ -2,6 +2,7 @@ package com.mogo.utils;
|
||||
|
||||
import android.os.Handler;
|
||||
import android.os.HandlerThread;
|
||||
import android.os.Looper;
|
||||
|
||||
/**
|
||||
* @author congtaowang
|
||||
@@ -11,6 +12,7 @@ import android.os.HandlerThread;
|
||||
*/
|
||||
public class WorkThreadHandler {
|
||||
|
||||
private Looper mThreadLooper;
|
||||
private Handler mHandler;
|
||||
private HandlerThread mThread;
|
||||
|
||||
@@ -18,7 +20,8 @@ public class WorkThreadHandler {
|
||||
// private constructor
|
||||
mThread = new HandlerThread( "work-thread-handler" );
|
||||
mThread.start();
|
||||
mHandler = new Handler( mThread.getLooper() );
|
||||
mThreadLooper = mThread.getLooper();
|
||||
mHandler = new Handler( mThreadLooper );
|
||||
}
|
||||
|
||||
private static final class InstanceHolder {
|
||||
@@ -29,6 +32,10 @@ public class WorkThreadHandler {
|
||||
return InstanceHolder.INSTANCE;
|
||||
}
|
||||
|
||||
public Looper getLooper() {
|
||||
return mThreadLooper;
|
||||
}
|
||||
|
||||
private Object readResolve() {
|
||||
// 阻止反序列化,必须实现 Serializable 接口
|
||||
return InstanceHolder.INSTANCE;
|
||||
@@ -40,7 +47,7 @@ public class WorkThreadHandler {
|
||||
return mHandler != null && mHandler.post( r );
|
||||
}
|
||||
|
||||
public boolean postDelayed(Runnable r, long delayMillis ) {
|
||||
public boolean postDelayed( Runnable r, long delayMillis ) {
|
||||
return mHandler != null && mHandler.postDelayed( r, delayMillis );
|
||||
}
|
||||
|
||||
@@ -48,7 +55,7 @@ public class WorkThreadHandler {
|
||||
return mHandler;
|
||||
}
|
||||
|
||||
public boolean postOnceDelayed(Runnable r, long delayMillis ) {
|
||||
public boolean postOnceDelayed( Runnable r, long delayMillis ) {
|
||||
if ( mHandler == null ) {
|
||||
return false;
|
||||
} else {
|
||||
|
||||
@@ -84,8 +84,8 @@ public class MapPresenter extends Presenter<MapView> implements
|
||||
mMogoMapService.getMapUIController().recoverLockMode();//缩放地图会导致锁车发生改变,这里强制锁车
|
||||
}, 1_000 );
|
||||
} else {
|
||||
// 30s后锁车刷新
|
||||
mRefreshStrategyController.restartAutoRefreshAtTime( 30_000 );
|
||||
// 20s后锁车刷新
|
||||
mRefreshStrategyController.restartAutoRefreshAtTime( 20_000 );
|
||||
}
|
||||
} else if (type == 2) {
|
||||
|
||||
|
||||
@@ -63,6 +63,7 @@ import com.mogo.service.statusmanager.IMogoStatusChangedListener;
|
||||
import com.mogo.service.statusmanager.IMogoStatusManager;
|
||||
import com.mogo.service.statusmanager.StatusDescriptor;
|
||||
import com.mogo.utils.UiThreadHandler;
|
||||
import com.mogo.utils.WorkThreadHandler;
|
||||
import com.mogo.utils.logger.Logger;
|
||||
import com.mogo.utils.network.utils.GsonUtil;
|
||||
|
||||
@@ -272,8 +273,6 @@ public class MogoServices implements IMogoMapListener,
|
||||
}
|
||||
};
|
||||
|
||||
private HandlerThread mHandlerThread;
|
||||
|
||||
private Handler mThreadHandler;
|
||||
|
||||
public void init( Context context ) {
|
||||
@@ -330,12 +329,11 @@ public class MogoServices implements IMogoMapListener,
|
||||
}
|
||||
|
||||
private void initWorkThread() {
|
||||
mHandlerThread = new HandlerThread( "mogo-handler-thread" );
|
||||
mHandlerThread.start();
|
||||
mThreadHandler = new Handler( mHandlerThread.getLooper() ) {
|
||||
mThreadHandler = new Handler( WorkThreadHandler.getInstance().getLooper() ) {
|
||||
@Override
|
||||
public void handleMessage( Message msg ) {
|
||||
super.handleMessage( msg );
|
||||
Logger.d( TAG, "current thread: %s", Thread.currentThread() );
|
||||
if ( msg.what == ServiceConst.MSG_MAP_CHANGED ) {
|
||||
if ( msg.obj instanceof RefreshObject ) {
|
||||
RefreshObject ro = ( ( RefreshObject ) msg.obj );
|
||||
|
||||
@@ -85,7 +85,7 @@ public class ServiceConst {
|
||||
/**
|
||||
* 30 s
|
||||
*/
|
||||
public static final int DEFAULT_AUTO_REFRESH_WHEN_INTERRUPT = 30 * 1_000;
|
||||
public static final int DEFAULT_AUTO_REFRESH_WHEN_INTERRUPT = 20 * 1_000;
|
||||
|
||||
/**
|
||||
* 所有卡片显示的每类点的最大数据量
|
||||
|
||||
Reference in New Issue
Block a user