IOSchedulerJob

Note

As of GLib 2.36, the g_io_scheduler methods are deprecated in favor of GThreadPool and GTask.

Schedules asynchronous I/O operations. GIOScheduler integrates into the main event loop (GMainLoop) and uses threads.

Constructors

this
this(GIOSchedulerJob* gIOSchedulerJob)

Sets our main struct and passes it to the parent class

Members

Functions

getIOSchedulerJobStruct
GIOSchedulerJob* getIOSchedulerJobStruct()

Get the main Gtk struct

getStruct
void* getStruct()

the main Gtk struct as a void*

sendToMainloop
int sendToMainloop(GSourceFunc func, void* userData, GDestroyNotify notify)

Warning g_io_scheduler_job_send_to_mainloop is deprecated and should not be used in newly-written code. Use g_main_context_invoke(). Used from an I/O job to send a callback to be run in the thread that the job was started from, waiting for the result (and thus blocking the I/O job).

sendToMainloopAsync
void sendToMainloopAsync(GSourceFunc func, void* userData, GDestroyNotify notify)

Warning g_io_scheduler_job_send_to_mainloop_async is deprecated and should not be used in newly-written code. Use g_main_context_invoke(). Used from an I/O job to send a callback to be run asynchronously in the thread that the job was started from. The callback will be run when the main loop is available, but at that time the I/O job might have finished. The return value from the callback is ignored. Note that if you are passing the user_data from g_io_scheduler_push_job() on to this function you have to ensure that it is not freed before func is called, either by passing NULL as notify to g_io_scheduler_push_job() or by using refcounting for user_data.

Static functions

cancelAllJobs
void cancelAllJobs()

Warning g_io_scheduler_cancel_all_jobs is deprecated and should not be used in newly-written code. You should never call this function, since you don't know how other libraries in your program might be making use of gioscheduler. Cancels all cancellable I/O jobs. A job is cancellable if a GCancellable was passed into g_io_scheduler_push_job().

pushJob
void pushJob(GIOSchedulerJobFunc jobFunc, void* userData, GDestroyNotify notify, int ioPriority, Cancellable cancellable)

Warning g_io_scheduler_push_job is deprecated and should not be used in newly-written code. use GThreadPool or g_task_run_in_thread() Schedules the I/O job to run in another thread. notify will be called on user_data after job_func has returned, regardless whether the job was cancelled or has run to completion. If cancellable is not NULL, it can be used to cancel the I/O job by calling g_cancellable_cancel() or by calling g_io_scheduler_cancel_all_jobs().

Variables

gIOSchedulerJob
GIOSchedulerJob* gIOSchedulerJob;

the main Gtk struct

Meta