返回信息流如题,都是跪在二面基本上,一面基础知识,算法题都没什么问题,但是二面很看重工程背景,由于自己不会多线程和没有Linux系统开发经验被拒。
所以想学一下C++多线程,找了一些资料都不是很满意,请问大家有什么好的资料最好是视频,否则简单的书籍也行,最后能由浅入深,或者给一个学习建议。。。我觉得现在不知道怎样入手,谢谢。
这是一条镜像帖。来源:北邮人论坛 / cpp / #97541同步于 2018/5/11
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
最近面试多家被跪
zhypsy
2018/5/11镜像同步62 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
入门:
Adve的教程,可以作为memory model的背景介绍。慢慢读,不要着急: http://www.hpl.hp.com/techreports/Compaq-DEC/WRL-95-7.pdf
Boehm的论文:讲述了这个C++ 11 memory model的前世今生: http://www.hpl.hp.com/techreports/2008/HPL-2008-56.pdf
Boehm的简明教程: http://hboehm.info/c++mm/threadsintro.html
C++编程:
线程库: http://en.cppreference.com/w/cpp/thread
原子操作库: http://en.cppreference.com/w/cpp/atomic
C++14标准(拿不准的,这里是最后的参考): https://isocpp.org/files/papers/N3690.pdf
实践:
memory model要懂,happens-before关系要懂,但编程的时候轻易不要使用无锁同步。编程的时候
1、能用消息队列就用消息队列
2、需要共享变量,首先考虑用锁
3、必须用无锁同步的话,用memord_seq_cst
4、发现性能还有问题,先考虑改进算法
5、实在不行,考虑用更弱的memord。
更多资料:
Hans Boehm的关于C++11 memory model的一坨文章,还有教程:http://hboehm.info/c++mm/
先膜拜一下暖神!然后,有个问题:您上面说IPC能用消息队列就用消息队列,那么请问是用pthread的还是System V的消息队列比较好呢?据我所知,System V的信号量性能要比pthread的差很多,因为System V信号量每次使用都要进入内核态,不知道消息队列用那种更好一些?
【 在 nuanyangyang (暖羊羊) 的大作中提到: 】
: 入门:
: Adve的教程,可以作为memory model的背景介绍。慢慢读,不要着急: http://www.hpl.hp.com/techreports/Compaq-DEC/WRL-95-7.pdf
: Boehm的论文:讲述了这个C++ 11 memory model的前世今生: http://www.hpl.hp.com/techreports/2008/HPL-2008-56.pdf
: ...................
通过『我邮2.0』发布
非常感谢您的回答,我会好好看一下,另外,有没有一些比较适合新手的通俗易懂点的入门级资料呢
【 在 nuanyangyang (暖羊羊) 的大作中提到: 】
: 入门:
: Adve的教程,可以作为memory model的背景介绍。慢慢读,不要着急: http://www.hpl.hp.com/techreports/Compaq-DEC/WRL-95-7.pdf
: Boehm的论文:讲述了这个C++ 11 memory model的前世今生: http://www.hpl.hp.com/techreports/2008/HPL-2008-56.pdf
: ...................