您好、欢迎来到现金彩票网!
当前位置:秒速牛牛 > 通信量填充 >

使用全局变量实现任务间的通信的缺点

发布时间:2019-05-20 18:14 来源:未知 编辑:admin

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  因此,全局变量如果是在初始化之后,就不再更改,而各个任务永远都是只去读取这个全局变量的值的话,那么这个全局变量算是安全的。其实,应该定义为全局常量更好。

  而普通的任务之间的通信,往往是A任务把值设置上,B任务去读取。甚至会出现多个任务设置值多个任务去读取的问题。这就涉及到数据的设置以及读取的准确性的问题。举个最简单的例子,A把全局量设置成了2,B还没来得及把这个2读走,C就把它给设置成了10。其实,就是通信失败。

  所以,我们要对这个全局量在这些任务之间的使用规则做一个“规定”,即任务间的信息同步处理。常见的做法是做写同步锁,读同步锁,而这些锁一般使用 事件(event),互斥量(mutex),

  总结一下,如果使用全局变量作为任务之间通信的手段的话,需要考虑清楚谁能看,谁不能看,谁能写,谁不能写,谁该在什么时机去读,该在什么时机去写,如何通知对方自己写完了,如何通知对方自己读完了。甚至要考虑这个全局量的初始化以及Reset等。也就是需要做好完善的信息同步机制,否则,就可能想读的读不出来,不该写的却写进去了,等等问题的发生。

http://upschool.net/tongxinliangtianchong/47.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有