submit_job


Description:

[ Version ( since = "3.2" ) ]
public void submit_job (string description, owned SessionCallback callback)

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 this was created. This is typically the same thread that hosts the global default MainContext, 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.

Parameters:

this

a Session

description

human readable description of the job, shown to a user

callback

a SessionCallback

notify

a DestroyNotify function

user_data

user data passed to the callback