Skip to content

Commit 94bf2c4

Browse files
committed
refactoring
1 parent 2da82a8 commit 94bf2c4

File tree

1 file changed

+16
-16
lines changed

1 file changed

+16
-16
lines changed

src/com/thread.h

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,20 @@ inline int hardware_concurrency()
4242

4343
class Threads final
4444
{
45+
static void add_message(const char* const message, std::optional<std::string>& res)
46+
{
47+
if (!res)
48+
{
49+
res = message;
50+
return;
51+
}
52+
if (!res->empty())
53+
{
54+
*res += '\n';
55+
}
56+
*res += message;
57+
}
58+
4559
struct Thread final
4660
{
4761
std::future<void> future;
@@ -62,20 +76,6 @@ class Threads final
6276
{
6377
std::optional<std::string> res;
6478

65-
const auto add_message = [&](const char* const message)
66-
{
67-
if (!res)
68-
{
69-
res = message;
70-
return;
71-
}
72-
if (!res->empty())
73-
{
74-
*res += '\n';
75-
}
76-
*res += message;
77-
};
78-
7979
for (Thread& thread : threads_)
8080
{
8181
thread.thread.join();
@@ -88,11 +88,11 @@ class Threads final
8888
}
8989
catch (const std::exception& e)
9090
{
91-
add_message(e.what());
91+
add_message(e.what(), res);
9292
}
9393
catch (...)
9494
{
95-
add_message("Unknown error in thread");
95+
add_message("Unknown error in thread", res);
9696
}
9797
}
9898

0 commit comments

Comments
 (0)