int main(void) { int ret = 0; je_thread_t thread; malloc_printf("Test begin\n"); je_thread_start(NULL); je_thread_create(&thread, je_thread_start, NULL); je_thread_join(thread, (void *)&ret); je_thread_start(NULL); je_thread_create(&thread, je_thread_start, NULL); je_thread_join(thread, (void *)&ret); je_thread_start(NULL); malloc_printf("Test end\n"); return (ret); }
int main(void) { int ret = 0; void *p; unsigned arena_ind; size_t size; int err; je_thread_t threads[NTHREADS]; unsigned i; malloc_printf("Test begin\n"); p = malloc(1); if (p == NULL) { malloc_printf("%s(): Error in malloc()\n", __func__); ret = 1; goto label_return; } size = sizeof(arena_ind); if ((err = mallctl("thread.arena", &arena_ind, &size, NULL, 0))) { malloc_printf("%s(): Error in mallctl(): %s\n", __func__, strerror(err)); ret = 1; goto label_return; } for (i = 0; i < NTHREADS; i++) { je_thread_create(&threads[i], je_thread_start, (void *)&arena_ind); } for (i = 0; i < NTHREADS; i++) je_thread_join(threads[i], (void *)&ret); label_return: malloc_printf("Test end\n"); return (ret); }