Method
CamelSessionsubmit_job
since: 3.2
Declaration [src]
void
camel_session_submit_job (
CamelSession* session,
const gchar* description,
CamelSessionCallback callback,
gpointer user_data,
GDestroyNotify notify
)
Description [src]
This function provides a simple mechanism for providers to initiate low-priority background jobs. Jobs can be submitted from any thread, but execution of the jobs is always as follows:
1) The CamelSession:job-started signal is emitted from the thread
in which session was created. This is typically the same thread
that hosts the global default GMainContext, or “main” thread.
2) The callback function is invoked from a different thread where
it’s safe to call synchronous functions.
3) Once callback has returned, the CamelSesson:job-finished signal
is emitted from the same thread as CamelSession:job-started was emitted.
4) Finally if a notify function was provided, it is invoked and passed user_data so that user_data can be freed.
Available since: 3.2
Parameters
description-
Type:
const gchar*Human readable description of the job, shown to a user.
The data is owned by the caller of the method. The value is a NUL terminated UTF-8 string. callback-
Type:
CamelSessionCallbackA
CamelSessionCallback. user_data-
Type:
gpointerUser data passed to the callback.
The argument can be NULL.The data is owned by the caller of the method. notify-
Type:
GDestroyNotifyA
GDestroyNotifyfunction.