C++开发
分享C++开发技术。
anda0109
密码学与信息安全,区块链,高速网络,时序数据库,分布式数据库/存储,量子计算。
展开
-
读《把时间当作朋友》,我学到了这几点
已经是第二遍读《把时间当作朋友》了。第一遍读下来,我最大的收获是认识到心智对一个人成长的重要性。心智的力量其实就是用大脑控制大脑,用现在更加通俗和时髦的说法就是:刻意练习。比如,已经到了睡觉的时间,但美剧实在太精彩或者游戏打得正嗨,这时大脑的自然状态就是继续进行现在的事情。然而,此时大脑调动的信息却是要按时睡觉、明天上班需要保持好的精神。所以此时你有两个选择,一是继续进行现在的事情,二是停止现在的事原创 2016-11-01 10:26:25 · 2616 阅读 · 2 评论 -
STL简介
C++ STL (Standard Template Library标准模板库) 是通用类模板和算法的集 合,它提供给程序员一些标准的数据结构的实现如queues(队列), lists(链表), 和 stacks(栈)等. C++ STL 提供给程序员以下三种标准容器类的实现: 一、顺序性容器(Sequence containers) vector 从后面快速的插入与删除,直接访原创 2015-01-23 22:15:29 · 1233 阅读 · 0 评论 -
boost::thread编程-线程本地存储
有时候函数使用了局部静态变量或全局静态变量,因此不能用于多线程环境,因此无法保证静态变量在多线程重入时的正确操作。 boost::thread库使用thread_specific_ptr实现了可移植的线程本地存储机制(thread local storage,或者是thread specific storage,简称tss),使这样的变量用起来就像每个线程独立拥有,可以简化多线程应用,提高性能。原创 2014-12-16 15:12:41 · 2561 阅读 · 0 评论 -
boost::thread编程-共享互斥量
共享互斥量shared_mutex允许线程获取多个共享所有权shared_lock和一个专享所有权uique_lock,实现了读写锁机制,即多个读线程一个写线程。 #include "stdafx.h" #include #include #include boost::mutex io_mu;//io读写锁 class rw_data { public: rw_data():m_x原创 2014-12-16 13:06:15 · 1708 阅读 · 0 评论 -
boost::thread编程-线程组
thread库提供thread_group类用于管理一组线程,就像一个线程池,它内部使用std::list来容纳thread对象,类摘要如下: class thread_group::private noncopyable { public: template; thread* create_thread(F threadfunc); void add_thread(thread* thr原创 2014-12-15 16:24:21 · 2202 阅读 · 0 评论 -
boost::thread编程-线程中断
thread的成员函数interrupt()允许正在执行的线程被中断,被中断的线程会抛出一个thread_interrupted异常,它是一个空类,不是std::exception或boost::exception的子类。thread_interrupted异常应该在线程执行函数里捕捉和处理,如果线程不处理这个异常,那么默认会中止线程的执行。 #include "stdafx.h" #inclu原创 2014-12-15 15:24:42 · 10162 阅读 · 0 评论 -
boost::thread编程-线程创建
boost::thread库提供了以下三种线程启动方式: 1)、最简单的方式 // BoostThread.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include void thread_fun(std::string s) { std::cout<<"thread parameter:"<<s<<std::endl原创 2014-12-15 11:07:05 · 1412 阅读 · 0 评论