diff --git a/common/utils/task_manager/thread_pool/task_manager.c b/common/utils/task_manager/thread_pool/task_manager.c index b88ac4f66a1bcd7b3cc90e849bb7549c026725f2..b3d5845bd570b8ade4847ebbaee1eb7c02fee527 100644 --- a/common/utils/task_manager/thread_pool/task_manager.c +++ b/common/utils/task_manager/thread_pool/task_manager.c @@ -42,6 +42,7 @@ #include <unistd.h> #include <ctype.h> // toupper +#include "system.h" // #define POLL_AND_SLEEP @@ -511,30 +512,9 @@ void init_ws_task_manager(ws_task_manager_t* man, int* core_id, size_t num_threa args->idx = i; args->man = man; args->core_id = core_id[i]; - - pthread_attr_t attr = {0}; - - int ret = pthread_attr_init(&attr); - DevAssert(ret == 0); - ret = pthread_attr_setinheritsched(&attr, PTHREAD_EXPLICIT_SCHED); - DevAssert(ret == 0); - ret = pthread_attr_setschedpolicy(&attr, SCHED_RR); - DevAssert(ret == 0); - struct sched_param sparam = {0}; - sparam.sched_priority = 97; - ret = pthread_attr_setschedparam(&attr, &sparam); - - int rc = pthread_create(&man->t_arr[i], &attr, worker_thread, args); - if (rc != 0) { - printf("[TASK_MAN]: %s \n", strerror(rc)); - printf("[TASK_MAN]: Could not create the pthread with attributtes, trying without attributes\n"); - rc = pthread_create(&man->t_arr[i], NULL, worker_thread, args); - AssertFatal(rc == 0, "Error creating a thread"); - } - char name[64]; sprintf(name, "Tpool%ld_%d", i, core_id[i]); - pthread_setname_np(man->t_arr[i], name); + threadCreate(&man->t_arr[i], worker_thread, args, name, args->core_id, OAI_PRIORITY_RT_MAX); } // Syncronize thread pool threads. All the threads started