资源共享的疑惑
请问硬汉:裸机编程中,我们常常使用全局变量,OS里的队列等本质上也是全局变量,但为何OS中的Msg就可以不用考虑多线程同时访问的问题。
都做了多线程保护了。 本帖最后由 myxiaonia 于 2018-8-10 14:29 编辑
os的msg不能保证msg指向的内容就可以多线程访问,它只能保证消息投递是安全的,因为msg只是一个指针而已。如果你合理规划全局变量的修改和读,不用消息照样全局访问,没规划好用消息也是白搭
你要真想多线程安全访问,只能发送的地方分配块内存复制一遍,接收方用完再释放
页:
[1]