48 lines
1 KiB
Text
48 lines
1 KiB
Text
Index: src/libslic3r/Thread.cpp
|
|
--- src/libslic3r/Thread.cpp.orig
|
|
+++ src/libslic3r/Thread.cpp
|
|
@@ -6,6 +6,10 @@
|
|
#include <pthread.h>
|
|
#endif
|
|
|
|
+#ifdef __OpenBSD__
|
|
+ #include <pthread_np.h>
|
|
+#endif
|
|
+
|
|
#include <atomic>
|
|
#include <condition_variable>
|
|
#include <mutex>
|
|
@@ -155,6 +159,33 @@ std::optional<std::string> get_current_thread_name()
|
|
// char buf[16];
|
|
// return std::string(thread_getname_np(buf, 16) == 0 ? buf : "");
|
|
return std::nullopt;
|
|
+}
|
|
+
|
|
+#elif __OpenBSD__
|
|
+
|
|
+bool set_thread_name(std::thread &thread, const char *thread_name)
|
|
+{
|
|
+ pthread_set_name_np(thread.native_handle(), thread_name);
|
|
+ return true;
|
|
+}
|
|
+
|
|
+bool set_thread_name(boost::thread &thread, const char *thread_name)
|
|
+{
|
|
+ pthread_set_name_np(thread.native_handle(), thread_name);
|
|
+ return true;
|
|
+}
|
|
+
|
|
+bool set_current_thread_name(const char *thread_name)
|
|
+{
|
|
+ pthread_set_name_np(pthread_self(), thread_name);
|
|
+ return true;
|
|
+}
|
|
+
|
|
+std::optional<std::string> get_current_thread_name()
|
|
+{
|
|
+ char buf[16];
|
|
+ pthread_get_name_np(pthread_self(), buf, 16);
|
|
+ return std::string(buf);
|
|
}
|
|
|
|
#else
|