C++/STL 17

[C++] std::async, std::thread (2)

https://donot-simsim.tistory.com/35 [C++] std::async, std::thread (1) 둘 다 비동기 작업을 수행하기 위해 만드는 것은 동일. 다만 몇 가지의 차이는 있다. 쓰면서 가장 와닿았던 두 가지의 특성이 있는데, 1. std::thread는 그저 thread를 하나 만들 뿐이다. 그에 관한 관 donot-simsim.tistory.com 여기서 이어지는 두 번째. 2. std::thread는 해당 함수를 통해 값을 가져오는 건 좀 귀찮아서, 주로 watchdog 같은 곳에 사용하게 되더라. 반면 std::async는 만드는 순간 future object를 되돌려주기 때문에, 해당 함수에서 값을 얻어오는 대에 특화되어있다. 이번엔 두 번쨰. async 는 th..

C++/STL 2023.04.10

[C++] std::async, std::thread (1)

둘 다 비동기 작업을 수행하기 위해 만드는 것은 동일. 다만 몇 가지의 차이는 있다. 쓰면서 가장 와닿았던 두 가지의 특성이 있는데, 1. std::thread는 그저 thread를 하나 만들 뿐이다. 그에 관한 관리는 직접 해야한다. 반면에 std::async는 자체 thread pool을 가지고 있어 관리에 대해서는 좀 놓아도 상관없다. 2. std::thread는 해당 함수를 통해 값을 가져오는 건 좀 귀찮아서, 주로 watchdog 같은 곳에 사용하게 되더라. 반면 std::async는 만드는 순간 future object를 되돌려주기 때문에, 해당 함수에서 값을 얻어오는 대에 특화되어있다. 여기에선 첫 번째에 관해서만 확인해보자. #include #include void func() { std:..

C++/STL 2023.04.09

[C++17] std::filesystem::path

c++17 부터 추가된 filesystem 안에 있는 path. https://en.cppreference.com/w/cpp/filesystem/path 자세한 것들은 여기있고.. 기본적으로 사용하는 것들 따로 정리해 보았다. 먼저, std::filesystem:: ~~ 라고 쓰기 귀찮으니, 관례적으로 using fs = std::filesystem이라 정의해 두고 사용한다고 한다. #include #include namespace fs = std::filesystem; int main() { // 현재 파일 fs::path _path("./test.txt"); std::cout

C++/STL 2023.04.04

[C++ Container] map/unordered_map. at, []. element access 차이

C++11 ~ 빠른 결론 : 없었던 것을 access할 때 [] -> 빈 값으로 세팅한다. at -> out_of_range exception을 throw 한다. 나머지 부분은 전부 동일. map / unordered_map 에서 key를 통해 값을 가져오는 두 가지의 방법. map.at(KEY) map[KEY] #include #include #include using namespace std; int main() { map colorCode { {"red", "FF0000"}, {"green", "00FF00"}, {"blue", "0000FF"}, }; cout

C++/STL 2023.02.24
반응형