首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 驱动开发 >

各位好!请问个可能和线程切换有关的有关问题

2012-03-16 
各位好!请教个可能和线程切换有关的问题!我工作中遇到一个问题。用的是linux系统,linux2.6.14。void DMX_Sen

各位好!请教个可能和线程切换有关的问题!
我工作中遇到一个问题。用的是linux系统,linux2.6.14。

void DMX_SendMessgae()
{
  memcpy();//复制一些数据,一般在500字节左右
   
  printf("22222222222");
  //发送消息队列操作
}

void DMX_CallBack()
{
  //互斥锁加锁;
  printf("111111111");
  DMX_SendMessgae();
  //互斥锁解锁
}

DMX_CallBack被调用,首先加锁,然后打印11111出来,调用DMX_SendMessgae,拷贝一些数据,打印222222,将拷贝的数据通过消息队列发送出去。

发现从111111打印到222222打印花费了3S的时间!

请教各位什么情况下会出现这种情况?

[解决办法]
应该是缓存的问题吧
你把printf语句改一下,加个\n试试
printf("11111111111\n");
printf("22222222222\n");

[解决办法]

探讨

应该是缓存的问题吧
你把printf语句改一下,加个\n试试
printf("11111111111\n");
printf("22222222222\n");

[解决办法]
可以参考这个文章
http://blog.csdn.net/taolinke/article/details/6295903

热点排行