瀏覽代碼

[libc]优化usleep函数

chinky 2 年之前
父節點
當前提交
b9f5bf7d91
共有 1 個文件被更改,包括 3 次插入3 次删除
  1. 3 3
      components/libc/posix/delay/delay.c

+ 3 - 3
components/libc/posix/delay/delay.c

@@ -1,5 +1,5 @@
 /*
 /*
- * Copyright (c) 2006-2021, RT-Thread Development Team
+ * Copyright (c) 2006-2023, RT-Thread Development Team
  *
  *
  * SPDX-License-Identifier: Apache-2.0
  * SPDX-License-Identifier: Apache-2.0
  *
  *
@@ -66,12 +66,12 @@ int usleep(useconds_t usec)
     if (rt_thread_self() != RT_NULL)
     if (rt_thread_self() != RT_NULL)
     {
     {
         msleep(usec / 1000u);
         msleep(usec / 1000u);
+        udelay(usec % 1000u);
     }
     }
     else  /* scheduler has not run yet */
     else  /* scheduler has not run yet */
     {
     {
-        udelay(usec / 1000u * 1000u);
+        udelay(usec);
     }
     }
-    udelay(usec % 1000u);
 
 
     return 0;
     return 0;
 }
 }