关于Linux多线程互斥共享资源
我现在要解决一个USB口占用和冲突的问题,我用了一个死循环来从控制端口发送请求数据的命令(写),然后通过数据端口来接收设备发送过来的数据(读),写一次读到一桢图像数据,我用了一个死循环来不停的写和读,这样我就可以不停的接收图像数据并显示,这样for(;;){write; read; display;}
而我现在还要在显示图像(即要不停的写和读,而写必须要用控制端口)的同时,通过控制端口发送其它控制命令,如读图像的各种参数给USB设备,设备从这个控制端口再给我回数据,这样{send; recv;}用一个按钮来实现,send要用到控制端口,这样按按钮的时候控制端口有时就会冲突和卡死,请问各位大虾,我这里是不是涉及到了资源的共享,这里在按按钮的时候要停止那个图像数据的传输吗,是的话该怎么实现呢?用信号量?还是互斥锁?想到用这些,但是具体不知道怎么用,请各位大虾指点。