拥有线程安全和阻塞功能的vector类SemVector(LINUX平台)
这是我自己写的一个拥有线程安全和阻塞功能的vector类SemVector(LINUX平台),欢迎大家使用
//测试例子#define PRINT_DEBUG#include "semvector.h"SemVector<int> g_tvec(10);int g_value = 1;const int TCOUNT = 100;//生产者线程void *Producer(void *arg){while(1){g_tvec.PushBack(g_value++);}}//消费者线程void *Customer(void *arg){while(1){g_tvec.PopBack();}}//主函数int main(){pthread_t proid[TCOUNT], cusid[TCOUNT];//产生10个生产者和10个消费者for(int i=0; i<TCOUNT; i++){pthread_create(&proid[i], NULL, Producer, NULL);pthread_create(&cusid[i], NULL, Customer, NULL);}for(int i=0; i<TCOUNT; i++){pthread_join(proid[i], NULL);pthread_join(cusid[i], NULL);}return 0;}