/** Allocate a stack for a new thread. */
static void * stack_allocate(size_t size)
{
- return malloc(size);
+ return snapshot_malloc(size);
}
/** Free a stack for a terminated thread. */
static void stack_free(void *stack)
{
- free(stack);
+ snapshot_free(stack);
}
/** Return the currently executing thread. */
void Thread::complete()
{
if (!is_complete()) {
- DEBUG("completed thread %d\n", get_id());
+ DEBUG("completed thread %d\n", id_to_int(get_id()));
state = THREAD_COMPLETED;
if (stack)
stack_free(stack);
* @param a The parameter to pass to this function.
*/
Thread::Thread(thrd_t *t, void (*func)(void *), void *a) :
+ creation(NULL),
+ pending(NULL),
start_routine(func),
arg(a),
user_thread(t),