summaryrefslogtreecommitdiffstatshomepage
path: root/foo.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'foo.cpp')
-rw-r--r--foo.cpp39
1 files changed, 0 insertions, 39 deletions
diff --git a/foo.cpp b/foo.cpp
deleted file mode 100644
index a7891bb..0000000
--- a/foo.cpp
+++ /dev/null
@@ -1,39 +0,0 @@
-#include <array>
-#include <cstddef>
-#include <exception>
-#include <functional>
-#include <iostream>
-#include <mutex>
-#include <thread>
-
-namespace {
-
-struct Counter {
- std::mutex mtx;
- std::size_t impl = 0;
-};
-
-void do_something(Counter& counter) {
- std::lock_guard<std::mutex> lck{counter.mtx};
- ++counter.impl;
- std::cout << "Doing something #" << counter.impl << '\n';
-}
-
-}
-
-int main() {
- try {
- Counter counter;
- std::array<std::thread, 3> workers;
- for (auto& worker : workers) {
- worker = std::thread{&do_something, std::ref(counter)};
- }
- for (auto& worker : workers) {
- worker.join();
- }
- } catch (const std::exception& e) {
- std::cerr << e.what() << '\n';
- return 1;
- }
- return 0;
-}