/* * process_listener.c * * Created on: Sep 18, 2010 * Author: lamikr */ #include #include #include #include #include #include #include #include #include "process_listener.h" static pthread_t _listener_thread; static bool _continue; static void *process_listener_thread(void *thread_args_pointer) { int status; int closed_pid; while(_continue) { closed_pid = wait(&status); if (closed_pid >= 0) { log_info("process closed: %d, status: %d\n", closed_pid, status); } } pthread_exit(NULL); } void start_process_listener() { log_debug("start_process_listener()\n"); _listener_thread = 0; _continue = true; pthread_create(&_listener_thread, NULL, process_listener_thread, (void *)NULL); } void stop_process_listener() { _continue = false; // pthread_cancel(_listener_thread); // pthread_join(_listener_thread, NULL); }