Allegro 5 api
#include <allegro5/allegro.h> void al_join_thread(ALLEGRO_THREAD *thread, void **ret_value)
Wait for the thread to finish executing. This implicitly calls al_set_thread_should_stop(3alleg5) first.
If ret_value is non-NULL, the value returned by the thread function will be stored at the location pointed to by ret_value.
al_set_thread_should_stop(3alleg5), al_get_thread_should_stop(3alleg5), al_destroy_thread(3alleg5).