ext/iodine/fio.c
/** Performs all deferred functions until the queue had been depleted. */
Performs all deferred functions until the queue had been depleted.
Performs all deferred functions until the queue had been depleted .
void fio_defer_perform(void) {
#if FIO_USE_URGENT_QUEUE
  while (fio_defer_perform_single_task_for_queue(&task_queue_urgent) == 0 ||
         fio_defer_perform_single_task_for_queue(&task_queue_normal) == 0)
    ;
#else
  while (fio_defer_perform_single_task_for_queue(&task_queue_normal) == 0)
    ;
#endif
}
void fio_defer_perform ( void ) { #if FIO_USE_URGENT_QUEUE while ( fio_defer_perform_single_task_for_queue ( & task_queue_urgent ) == 0 || fio_defer_perform_single_task_for_queue ( & task_queue_normal ) == 0 ) ; #else while ( fio_defer_perform_single_task_for_queue ( & task_queue_normal ) == 0 ) ; #endif }
Performs all deferred functions until the queue had been depleted.
Performs all deferred functions until the queue had been depleted .
//   for (;;) { // #if FIO_USE_URGENT_QUEUE //     fio_defer_task_s task = fio_defer_pop_task(&task_queue_urgent); //     if (!task.func) //       task = fio_defer_pop_task(&task_queue_normal); // #else //     fio_defer_task_s task = fio_defer_pop_task(&task_queue_normal); // #endif //     if (!task.func) //       return; //     task.func(task.arg1, task.arg2); //   }