The SocketSource keeps a reference to the this.
The callback on the source is of the DatagramBasedSourceFunc type.
It is meaningless to specify g_io_err or g_io_hup in
; these conditions will always be reported in the callback if they are true.
cancellable can be used to cancel the source, which will cause the source to
trigger, reporting the current condition (which is likely 0 unless cancellation happened at the same time as a condition change). You can check
for this in the callback using is_cancelled.
a IOCondition mask to monitor
a newly allocated SocketSource