本帖最后由 soulmate 于 2012-3-31 19:17 编辑
现在假设有个高优先级的串口发送任务挂起,串口中断收到合适的数据后post信号量,这个任务得到信号量以后把数据发出去,现在这块儿高速收发都没有问题,还有一个低优先级的tcp处理任务,假设这个tcp任务发送1000多个字节数据过程当中,串口中断收到有效数据并且post信号量,这时候高优先级的任务可以立即执行吗?
现在的实际现象是当低优先级的的tcp发送数据一半的时候,假如来了高优先级的串口任务,高优先级的串口发送任务好像并没有立即执行,直到tcp把这一包数据发完~我想发送中先停下tcp,做完串口发送后再执行剩下的tcp发送任务,实际会被打断,不知道是怎么回事? |