[change] 修改分发数据线程死亡时无法转发数据bug
This commit is contained in:
@@ -960,7 +960,6 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas
|
||||
public void onClientStatusConnectChanged(int statusCode, String sign, Channel channel) {
|
||||
if (statusCode == ConnectState.STATUS_CONNECT_SUCCESS) {
|
||||
connectStatus = IPC_CONNECTION_STATUS.CONNECTED;
|
||||
AdasManager.getInstance().startDispatchHandler();
|
||||
} else {
|
||||
connectStatus = IPC_CONNECTION_STATUS.DISCONNECTED;
|
||||
AdasManager.getInstance().stopDispatchHandler();
|
||||
|
||||
@@ -162,7 +162,7 @@ class TeleMsgHandler : IMsgHandler {
|
||||
if (isReceiveSN) {
|
||||
isReceiveSN = false
|
||||
}
|
||||
AdasManager.getInstance().startDispatchHandler()
|
||||
// AdasManager.getInstance().startDispatchHandler()
|
||||
ToastUtils.showShort("连接司机屏成功!")
|
||||
invokeNettyConnResult("乘客屏连接司机屏成功")
|
||||
val byteArray = byteArrayOf(0)
|
||||
|
||||
@@ -323,6 +323,7 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
|
||||
byte[] bytes = new byte[len];
|
||||
System.arraycopy(raw.originalData.toByteArray(), raw.getOffsetValue(), bytes, 0, len);
|
||||
mAdasListener.onPointCloud(bytes);
|
||||
CupidLogUtils.i(TAG, "收到点云数据" + raw.getPackageLengthValue());
|
||||
} else {
|
||||
if (rawUnpack != null) {
|
||||
if (raw.getProtocolStatus() == ProtocolStatus.SUCCEED) {
|
||||
@@ -505,7 +506,7 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
|
||||
private void updateConnectStatus(@Define.IPCConnectionStatus int status, @Nullable String reason) {
|
||||
ipcConnectionStatus.set(status);
|
||||
if (status == Constants.IPC_CONNECTION_STATUS.CONNECTED) {
|
||||
startDispatchHandler();
|
||||
|
||||
startCheckCompatibility();
|
||||
} else {
|
||||
stopCheckCompatibility();
|
||||
@@ -520,15 +521,6 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
|
||||
CupidLogUtils.i(TAG, "工控机连接状态 status=" + status + " reason=" + reason);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void startDispatchHandler() {
|
||||
if (dispatchHandler != null) {
|
||||
dispatchHandler.start();
|
||||
}
|
||||
if (dispatchHandlerPointCloud != null) {
|
||||
dispatchHandlerPointCloud.start();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void stopDispatchHandler() {
|
||||
|
||||
@@ -217,12 +217,6 @@ public class AdasManager implements IAdasNetCommApi {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void startDispatchHandler() {
|
||||
if (mChannel != null) {
|
||||
mChannel.startDispatchHandler();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void stopDispatchHandler() {
|
||||
|
||||
@@ -338,10 +338,6 @@ public interface IAdasNetCommApi {
|
||||
*/
|
||||
void decoderRaw(byte[] bytes);
|
||||
|
||||
/**
|
||||
* 启动分发线程
|
||||
*/
|
||||
void startDispatchHandler();
|
||||
|
||||
/**
|
||||
* 停止分发线程
|
||||
|
||||
@@ -18,7 +18,7 @@ public class CupidLogUtils {
|
||||
* @param isEnableLog true开启 false关闭
|
||||
*/
|
||||
public static void setEnableLog(boolean isEnableLog) {
|
||||
mIsEnableLog = isEnableLog;
|
||||
// mIsEnableLog = isEnableLog; TODO 临时注释
|
||||
}
|
||||
|
||||
public static boolean isEnableLog() {
|
||||
|
||||
@@ -31,14 +31,6 @@ public class DispatchHandler {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public void start() {
|
||||
if (mThread == null) {
|
||||
mThread = new HandlerThread(name);
|
||||
mThread.start();
|
||||
initHandler(mThread.getLooper());
|
||||
}
|
||||
}
|
||||
|
||||
public void stop() {
|
||||
if (mBaseHandler != null) {
|
||||
mBaseHandler.removeCallbacksAndMessages(null);
|
||||
@@ -51,12 +43,15 @@ public class DispatchHandler {
|
||||
}
|
||||
|
||||
public void sendRawMessage(RawData raw) {
|
||||
if (mBaseHandler != null) {
|
||||
Message msg = Message.obtain();
|
||||
msg.what = WHAT_DISPATCH_RAW;
|
||||
msg.obj = raw;
|
||||
mBaseHandler.sendMessage(msg);
|
||||
if (mThread == null) {
|
||||
mThread = new HandlerThread(name);
|
||||
mThread.start();
|
||||
initHandler(mThread.getLooper());
|
||||
}
|
||||
Message msg = Message.obtain();
|
||||
msg.what = WHAT_DISPATCH_RAW;
|
||||
msg.obj = raw;
|
||||
mBaseHandler.sendMessage(msg);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user