xiao-mang 1 년 전
부모
커밋
c85069f9fc
1개의 변경된 파일3개의 추가작업 그리고 2개의 파일을 삭제
  1. 3 2
      components/net/lwip/port/sys_arch.c

+ 3 - 2
components/net/lwip/port/sys_arch.c

@@ -408,8 +408,9 @@ u32_t sys_arch_mbox_fetch(sys_mbox_t *mbox, void **msg, u32_t timeout)
         else
             t = timeout / (1000 / RT_TICK_PER_SECOND);
     }
-
-    ret = rt_mb_recv(*mbox, (rt_ubase_t *)msg, t);
+    /*When the waiting msg is generated by the application through signaling mechanisms,
+    only by using interruptible mode can the program be made runnable again*/
+    ret = rt_mb_recv_interruptibale(*mbox, (rt_ubase_t *)msg, t);
     if(ret != RT_EOK)
     {
         return SYS_ARCH_TIMEOUT;