天行健,君子以自强不息!
发布时间:2018-02-12 18:04:37
前言:只要在类中声明静态成员变量,即使不定义对象,也可以为静态成员变量分配空间,进而可以使用静态成员变量。(因为静态成员变量在对象创建之前就已经被分配了内存空间)静态成员的定义和声明要加个关键static。静态成员可以通过双冒号来使用,即<类名>::<静态成员名>。不能用参数.........【阅读全文】
发布时间:2018-02-12 17:12:50
一、单例1.1. 意图保证一个类仅有一个实例,并提供一个访问它的全局访问点。1.2. 动机如何保证一个类只有一个实例,并且这个实例易于被访问呢?如希望系统中只有一个脱机打印机实例,只有一个访问配置文件的实例时。如果使用全局变量,将使得一个对象可以被访问,但它不能防止你实例化多个对.........【阅读全文】
发布时间:2017-12-29 23:42:30
一、互斥锁的应用互斥量从本质上说就是一把锁, 提供对共享资源的保护访问。1. 初始化:在Linux下, 线程的互斥量数据类型是pthread_mutex_t. 在使用前, 要对它进行初始化: 对于静态分配的互斥量, 可以把它设置为PTHREAD_MUTEX_INITIALIZER. 对于动态分配的互斥量, 在申请内存(malloc)之后, 通过pthrea.........【阅读全文】
发布时间:2017-12-29 11:33:21
一、在多实例间实现全局的线程安全锁1.1 实例场景:1. 类的声明与定义//channel.hclass CChannel{ friend void* audio_write_process(void* params); friend void* video_write_process(void* params);public: CChannel(); ~CChannel();public: int handle_audio_thread();&.........【阅读全文】