多线程编程的时候,使用无锁结构会不会比有锁结构更加快?

LINUX下网络编程。 我原来是使用的一个单线程的收发包模式,现在改成了多线程,一个线程收一个线程处理,但是两个线程的数据访问就是一个问题。我做了一个链表用比较复杂的方案不用锁实现数据访问和删除,可是我最近一直在想如果用锁的话会不会实现更好的效率,或者是效率没有差别? 我想问下加锁到底要消耗多少资源呢?不加锁和加锁区别有多大? 目前就两个线程,但是每秒可能会有大量访问。 我现在的结构是,一个线程收udp包,…
关注者
758
被浏览
56936
可以看看 disruptor