当前位置: 首页 > news >正文

12306的网站多少钱做的网站开发技术文档 范本

12306的网站多少钱做的,网站开发技术文档 范本,网页设计html代码大全下载,ui设计接单价目表作者 | strongerHuang微信公众号 | 嵌入式专栏在基于RTOS开发项目时#xff0c;通常都会遇到互斥的情况#xff0c;比如#xff1a;几个任务都要使用一个UART串口进行发送数据。如果不加互斥锁#xff0c;优先级高的任务#xff0c;会抢占串口并发送数据#xff0c;则有可… 作者 | strongerHuang微信公众号 | 嵌入式专栏在基于RTOS开发项目时通常都会遇到互斥的情况比如几个任务都要使用一个UART串口进行发送数据。如果不加互斥锁优先级高的任务会抢占串口并发送数据则有可能会出现发送数据“乱码”的情况。今天就说说在RTOS开发中互斥锁一个常见的问题。什么是Mutex互斥锁学习过RTOS的读者应该对互斥不陌生互斥锁就是为了避免任务之间互相抢占某种资源而设计的一种“锁”。就如上面说的一个串口被两个任务抢占如果不加锁则会出现两个任务交叉发送数据即“乱码”但是如果加了互斥锁则会等待其他任务发送完成之后才继续发送保证了数据的完整而不是乱码Mutex互斥锁例子这里以三个任务、两个互斥锁为例代码如下void task1() {/*do something*/OSMutex1_Pend(); //互斥锁1加锁/*加锁处理事情*/OSMutex1_Post(); //互斥锁1解锁 }void task2() {/*do something*/OSMutex1_Pend(); //互斥锁1加锁OSMutex2_Pend(); //互斥锁2加锁/*加锁处理事情*/OSMutex2_Post(); //互斥锁2解锁OSMutex1_Post(); //互斥锁1解锁 }void task3() {/*do something*/OSMutex2_Pend(); //互斥锁2加锁/*加锁处理事情*/OSMutex2_Post(); //互斥锁1解锁 }这样设计大家看出问题了吗老司机应该看出来了新手可能摸不着头脑。在任务2中进行了2次加锁、解锁而且“环环相扣”。Mutex互斥锁问题假如任务1、 任务2、 任务3优先级分别为1、 2、 3。优先级顺序就是任务1  任务2  任务3数字越小代表任务优先级越高。假设任务1和任务2处于等待事件状态也就是处于阻塞状态 task 3 处于运行状态。当任务3在“加锁处理事情”的时候任务2抢占了任务3任务2挂起时间到了此时任务3挂起任务2处于运行状态如果任务2在“互斥锁1加锁”之后任务1抢占了任务2此时任务1处于运行状态这个时候你发现问题了没有任务1在执行“OSMutex1_Pend();”会等待“互斥锁1解锁”如果其他方式没有对“互斥锁1解锁”则会出现“死锁”的情况。分享一张图片你就会明白什么是死锁了解决办法比如对任务2加锁方式进行改善void task2() {/*do something*/OSMutex1_Pend(); //互斥锁1加锁/*do something*/OSMutex1_Post(); //互斥锁1解锁OSMutex2_Pend(); //互斥锁2加锁/*do something*/OSMutex2_Post(); //互斥锁1解锁 }或者对低优先级的任务3加锁方式进行改善void task3() {/*do something*/OSMutex1_Pend(); //互斥锁1加锁OSMutex2_Pend(); //互斥锁2加锁/*加锁处理事情*/OSMutex2_Post(); //互斥锁2解锁OSMutex1_Post(); //互斥锁1解锁 }出问题的原因 当一个任务获得了临界区资源的锁在没有释放这个锁的前提下又去获得另外一块临界区资源这个时候就要引起足够的注意了设计成败在于你是否彻底理解了之前的问题。但是归根到底这样的问题还是要求用户在设计阶段去避免一个系统不可能是万能的正确的设计才是最重要的。------------ END ------------点击“阅读原文”查看更多分享。
http://www.pierceye.com/news/826479/

相关文章:

  • 网站建设 落地页中国石化工程建设有限公司怎么样
  • 网站建设 软文发布wordpress调取列表页
  • php网站服务器架设清远哪里有网页设计培训学费
  • 建站开发搜索引擎排名查询
  • 如何建设自己的网站 知乎怎么做电力设计公司网站
  • 效果图代做网站网站服务体系
  • 成都网站开发团队减肥养生网站建设
  • 个人做网站需要资质吗用php做网站的书籍
  • 开发一个交易网站多少钱做哪类网站比较赚钱
  • 帮人做彩票网站支付接口成都网络推广培训哪家好
  • 电子商务网站建设的教案404 not found wordpress
  • 怎样建设一个购物网站什么网站可以做直播
  • 石家庄网站开发培训灵犀科技网站开发佼佼者
  • 做阿里还是网站三个律师做网站合适吗
  • 梅州做网站设计公司网站 在百度搜索不到
  • 临沂门户网站制作微信附近人推广引流
  • 九龙坡区网站建设外贸是什么工作
  • 贵州省住房和城乡建设厅网站报名网网站开发入职转正申请书
  • 外贸平台哪个网站好做dede网站白屏
  • 可信的手机网站建设服装网站ui设计
  • 江苏网站建设效果好技术支持 英铭网站建设
  • 很多网站开发没有框架如何制作的网站模板制作与安装教程视频教程
  • 小说网站建设目的360如何做网站
  • 永安市住房与城乡建设局网站腾讯邮箱企业邮箱入口登录
  • 手机和wap网站建设wordpress链接 数据库
  • 1688网站简介青岛网站建设系统
  • 优秀网站的特点wordpress 腾讯云oss
  • 深圳专业做网站公司怎么做网站跳转
  • 设计教学网站推荐重庆大渝网
  • 网站建设询价邀请函二级建造师报名的官网