06 2018 档案

C++并发编程 条件变量 condition_variable,线程安全队列示例
摘要:1. 背景 c++11中提供了对线程与条件变量的更好支持,对于写多线程程序方便了很多。 再看c++并发编程,记一下学习笔记。 2. c++11 提供的相关api 3.1 wait wait用于无条件等待,其中Predicate表示校验条件,可以避免假唤醒。 3.2 wait for wait_for 阅读全文

posted @ 2018-06-23 23:49 旭东的博客 阅读(3528) 评论(0) 推荐(0) 编辑

C++ 并发编程,std::unique_lock与std::lock_guard区别示例
摘要:背景 平时看代码时,也会使用到std::lock_guard,但是std::unique_lock用的比较少。在看并发编程,这里总结一下。方便后续使用。 std::unique_lock也可以提供自动加锁、解锁功能,比std::lock_guard更加灵活。 std::lock_guard std: 阅读全文

posted @ 2018-06-20 08:03 旭东的博客 阅读(70081) 评论(0) 推荐(2) 编辑

linux设置预留端口号,防止监听端口被占用 ip_local_reserved_ports
摘要:1. 背景 linux服务器启动时,会对指定的端口进行监听bind,如果同一个机器上这个端口已经被使用,则监听失败,程序无法启动。 linux客户端连接服务器accept时,系统会分配本地临时端口用于网络连接。 目前是”大混部”的时代,一台物理机可能会部署多个服务,如果端口号设置不好,很可能会出现端 阅读全文

posted @ 2018-06-15 07:51 旭东的博客 阅读(7168) 评论(0) 推荐(0) 编辑

goto语句引起的crosses initialization of XXX
摘要:1. 背景 goto语句虽然目前已经不提倡使用,但是用起来还是很方便,尤其是老代码中见的比较多。 在改动有goto语句的老代码时需要特别注意,是否跳过来资源的释放、有用变量的初始化等等。 很久之前写c程序时,有些提交系统要求变量必须在函数开始地方全部申明,最近遇到了"crosses initiali 阅读全文

posted @ 2018-06-14 07:49 旭东的博客 阅读(1986) 评论(0) 推荐(0) 编辑

C++11 多线程编程 使用lambda创建std::thread (生产/消费者模式)
摘要:要写个tcp server / client的博客,想着先写个c++11多线程程序。方便后面写博客使用。 目前c++11中写多线程已经很方便了,不用再像之前的pthread_create,c++11中已经有了std::thread库可以方便使用。 直接看代码(100个任务, 多个线程处理): 编译、 阅读全文

posted @ 2018-06-02 17:00 旭东的博客 阅读(5647) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示