多线程访问固定大小缓冲区的疑问
u俺的me 2020-04-07 02:23:13 我有2个线程,分别是thread_1和thread_2;
thread_1负责从某个地方一直读取数据到buf,thread_2负责一直从buf中取出数据通过usb口发送出去;
由于某些原因(不赘述),thread_2取数据时需要直接拿到thread_1那个buf的地址,也就是说取数据时不能memcpy,因为多了一层拷贝会导致速率很慢;
现在的疑问是:如果保证两个线程都能并行运行?
谢谢大佬们了!
目前只能想到的方案是:搞2个buf,毕竟多数时间下,thread_1的填充buf的速率远大于thread_2的取出速率,这样thread_2就每次去另一个buf取数据,不知道有没有更好的办法?