#pragma once

namespace thrdlib {
	typedef void * thread_t;

	//--------------------
	// Basic thread support
	extern thread_t create( void (*main)( thread_t ) );
	extern void join( thread_t handle );
	extern void park( thread_t handle );
	extern void unpark( thread_t handle );
	extern void yield( void ) ;

	//--------------------
	// Basic kernel features
	extern void init( int procs );
	extern void clean( void );
};