当前位置: 首页 > Linux

多线程服务器编程[4]-C++多线程系统编程精要

时间:2023-04-06 23:49:30 Linux

线程原语的选择并没有直接使用Pthreads,而是使用了一个更易用的wrapper,封装了下面调用线程的创建和等待互斥体结束创建、销毁、锁定、解锁条件变量创建、销毁、等待、通知、广播在这些包装器之上进一步构建线程同步组件ThreadPoolCountDownLatchBlockingQueue(bounded/unbounded)...线程编程需要注意容器和std::string不是线程安全的。iostream不是线程安全的。线程标识符推荐使用gettid系统调用。它的类型是pid_t,是唯一的__thread,是GCC内置的线程本地存储设施,效率很高。但请注意,只有编译器常量可以用于初始化。每个文件描述符仅由一个线程操作。RAII封装的文件描述符不要使用多线程+fork不要使用多线程+信号