본문 바로가기
반응형

분류 전체보기156

ifstream, ofstream을 이용한 file 입출력 ifstream, ofstream을 이용한 file 입출력 방법 ifstream의 경우 ios::trunc를 주게되면 open이 되지 않는다. (good()이 false) 결과 부터 보기 not same same 그 다음에 code 보기 - 필요시 fstream:trunc는 제거 #include #include #include #include using namespace std; class FileIo { public: FileIo(void) = delete; explicit FileIo(const std::string& fileName) : fileName(fileName) { file.open(fileName, std::ios::binary | std::ios::in | std::ios::out | .. 2022. 1. 25.
intel tbb::concurrent_queue를 multi level queue로 이용해보기 ubuntu에서는 아래와 같이 설치 필요 * 직접 github에서 받아도 되나 편리한걸 쓰자 sudo apt install libtbb-dev build는 요런식으로.. g++ multi_concurrent_queue.cpp -pthread -ltbb -std=c++14 MAX개(1,000,000)의 Entry class를 push하는 thread를 1, 2, 4개씩, pop 하는 1개의 thread를 생성하여 시간 측정 #include #include #include #include #include #include #include #include #include using namespace std; using std::chrono::system_clock; using std::chrono::durati.. 2022. 1. 9.
intel tbb::concurrent_queue를 이용해보기 ubuntu에서는 아래와 같이 설치 필요 * 직접 github에서 받아도 되나 편리한걸 쓰자 sudo apt install libtbb-dev build는 요런식으로.. g++ concurrent_queue.cpp -pthread -ltbb -std=c++14 stl::queue와 mutex를 이용한 queue와 tbb::concurrent_queue의 비교 MAX개(1,000,000)의 Entry class를 push하는 thread를 1, 2, 4개씩, pop 하는 1개의 thread를 생성하여 시간 측정 #include #include #include #include #include #include #include #include using namespace std; using std::chrono.. 2022. 1. 9.
c++로 작성한 간단한 multi level queue 표준 lib을 써서.. #include #include #include #include #include using namespace std; template class MultiLevelQueue { public: MultiLevelQueue(void) { } virtual ~MultiLevelQueue(void) { } void Push(PriorityEnum p, shared_ptr entry) { queue_[p].push(entry); } shared_ptr Pop(void) { for (auto& q : queue_) { if (q.second.size()) { auto item = q.second.front(); q.second.pop(); return item; } } return share.. 2022. 1. 8.
반응형