creole
This commit is contained in:
parent
bdec49c3b6
commit
575d8e2167
2
creole
2
creole
|
@ -1 +1 @@
|
||||||
Subproject commit 0ead095044c93825c7db8cec0a6b92769bac7a7d
|
Subproject commit 56c6523e15176ecb5eadeda803d7e54c165d69ca
|
|
@ -126,18 +126,18 @@ read_size(int s)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
exec_entry(void *client_p, void *threadnum_p,
|
exec_entry(void *client_p, void *connection_num_p,
|
||||||
void *unused __attribute__((unused)))
|
void *unused __attribute__((unused)))
|
||||||
{
|
{
|
||||||
intptr_t client = (intptr_t)client_p;
|
intptr_t client = (intptr_t)client_p;
|
||||||
intptr_t threadnum = (intptr_t)threadnum_p;
|
intptr_t connection_num = (intptr_t)connection_num_p;
|
||||||
LOG_DBG("Entered thread %d", (int)threadnum);
|
|
||||||
int size = read_size(client);
|
|
||||||
|
|
||||||
char thread_name[64];
|
char thread_name[64];
|
||||||
snprintk(thread_name, sizeof(thread_name), "%"PRIdPTR":%"PRIdPTR, client, threadnum);
|
snprintk(thread_name, sizeof(thread_name), "%"PRIdPTR":%"PRIdPTR, client, connection_num);
|
||||||
k_thread_name_set(k_current_get(), thread_name);
|
k_thread_name_set(k_current_get(), thread_name);
|
||||||
|
|
||||||
|
LOG_DBG("%s: entered thread", get_thread_name());
|
||||||
|
|
||||||
|
int size = read_size(client);
|
||||||
if (size < 0) {
|
if (size < 0) {
|
||||||
LOG_WRN("%s: error in read size: %d", get_thread_name(), size);
|
LOG_WRN("%s: error in read size: %d", get_thread_name(), size);
|
||||||
zsock_close(client);
|
zsock_close(client);
|
||||||
|
@ -154,6 +154,7 @@ exec_entry(void *client_p, void *threadnum_p,
|
||||||
|
|
||||||
exec_creole(readbuf[threadnum], size, (int)client);
|
exec_creole(readbuf[threadnum], size, (int)client);
|
||||||
zsock_close(client);
|
zsock_close(client);
|
||||||
|
LOG_INF("Exiting thread %s", get_thread_name());
|
||||||
}
|
}
|
||||||
|
|
||||||
/* TODO: main thread must be higher priority than execution threads */
|
/* TODO: main thread must be higher priority than execution threads */
|
||||||
|
@ -172,9 +173,8 @@ main_loop(int srvsock)
|
||||||
thread_ever_used[i] = true;
|
thread_ever_used[i] = true;
|
||||||
k_thread_create(&threads[i], stacks[i],
|
k_thread_create(&threads[i], stacks[i],
|
||||||
THREAD_STACK_SIZ, exec_entry,
|
THREAD_STACK_SIZ, exec_entry,
|
||||||
(void*) client, (void*) i,
|
(void*) client, (void*) connection_counter,
|
||||||
(void*) connection_counter,
|
NULL, 1, 0, K_NO_WAIT);
|
||||||
1, 0, K_NO_WAIT);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue