1.优化代码,多线程时等待节点ok再open

This commit is contained in:
payton 2023-08-11 10:41:08 +08:00
parent de6ac0bbc4
commit a3b4273c49

View File

@ -77,30 +77,46 @@ SF_THREAD_S ThumbSend = {
}; };
SINT32 app_ttyusb_IsOpen(void) { SINT32 app_ttyusb_IsOpen(void) {
int retryTime = 0; int retryTime = 0;
int retryFlag = 0; int retryFlag = 0;
SINT32 s32ret = 0; SINT32 s32ret = 0;
MLOGD("ttyUSB has not been init, will init ttyUSB!\n"); MLOGD("ttyUSB has not been init, will init ttyUSB!\n");
while ((s32ret = sf_hal_ttyusb2_init()) < 0) {
retryTime++;
if ((0 == retryFlag) && (retryTime >= 100) &&
(retryTime % 100 == 0)) // 200ms*100 = 20s
{
MLOGE("-------ttyUSB init fail, clos usb mux.\n");
sf_usb_mux_s(0);
sleep(5);
sf_usb_mux_s(1);
retryFlag = 1;
} else if ((1 == retryFlag) && (retryTime >= 50) &&
(retryTime % 50 == 0)) // 200ms*25 = 5s
{
MLOGE("-------ttyUSB retry init fail!\n");
s32ret = SF_TTY_ERROR_OPEN;
break;
}
}
return s32ret; UINT8 i = 0;
for (i = 0; i < 40; i++) {
if (access("/dev/ttyUSB2", F_OK) == SF_SUCCESS) {
printf("tty usb ko exist!\r\n");
break;
} else {
usleep(100 * 1000);
if(39 == i)
{
MLOGE("NO ttyUSB dev!!\n");
}
}
}
//MLOGD("s1\n");
while ((s32ret = sf_hal_ttyusb2_init()) < 0) {
retryTime++;
if ((0 == retryFlag) && (retryTime >= 100) &&
(retryTime % 100 == 0)) // 200ms*100 = 20s
{
MLOGE("-------ttyUSB init fail, clos usb mux.\n");
sf_usb_mux_s(0);
sleep(5);
sf_usb_mux_s(1);
retryFlag = 1;
} else if ((1 == retryFlag) && (retryTime >= 50) &&
(retryTime % 50 == 0)) // 200ms*25 = 5s
{
MLOGE("-------ttyUSB retry init fail!\n");
s32ret = SF_TTY_ERROR_OPEN;
break;
}
}
MLOGD("e\n");
return s32ret;
} }
SINT32 sf_ttyusb_restart(void) { SINT32 sf_ttyusb_restart(void) {
@ -148,8 +164,8 @@ static SINT16 app_Qlog_procress(void) {
} }
#endif #endif
SINT32 sf_USB_net_init(void) { SINT32 sf_USB_net_init(void) {
SF_CHAR cmdStr[128] = {0}; //SF_CHAR cmdStr[128] = {0};
char cmdtmp[20] = {0}; //char cmdtmp[20] = {0};
UINT8 i = 0; UINT8 i = 0;
int ret = SF_SUCCESS; int ret = SF_SUCCESS;
UIMenuStoreInfo *puiPara = sf_app_ui_para_get(); UIMenuStoreInfo *puiPara = sf_app_ui_para_get();