|
|
@@ -2,7 +2,7 @@
|
|
|
|
|
|
原版RT-Thread `kserver.c `文件中的`rt_kprintf()`函数是线程不安全的,如果同时有两个线程同时使用`rt_kprintf()`打印数据,可能会导致数据被冲刷掉或者一方的信息根本没有打印出来等一系列奇奇怪怪的问题。比如:https://club.rt-thread.org/ask/question/429525.html
|
|
|
|
|
|
-RT-Thread官方清楚非线程安全所带来的后果,但是为了确保`rt_kprintf()`函数足够精炼有意而为之。
|
|
|
+RT-Thread官方清楚非线程安全所带来的后果,但是为了确保`rt_kprintf()`函数与标准C库的`printf`函数标准一致以及足够精炼有意而为之。
|
|
|
|
|
|
本安全版本`rt_kprintf()`函数会自动判断当前所处环境:
|
|
|
|
|
|
@@ -21,6 +21,9 @@ RT-Thread官方清楚非线程安全所带来的后果,但是为了确保`rt_k
|
|
|
总之,线程安全版本`rt_kprintf()`函数会和原版函数一样可以在任何环境下调用,不会受到影响,使用时和原版`rt_kprintf`无任何区别,用户无感。**无需屏蔽原版`rt_kprintf`**,因为原版`rt_kprintf`为弱函数,本软件包会自动覆盖原版`rt_kprintf`。
|
|
|
|
|
|
|
|
|
+## 适用版本
|
|
|
+4.0.4 版本以上
|
|
|
+
|
|
|
|
|
|
## 如何添加该软件包
|
|
|
|