typedef axlPointer(* MyQttThreadFunc)(axlPointer user_data)

Handle definition for the family of function that is able to accept the function myqtt_thread_create.

The function receive a user defined pointer passed to the myqtt_thread_create function, and returns an pointer reference that must be used as integer value that could be retrieved if the thread is joined.

Keep in mind that there are differences between the windows and the posix thread API, that are supported by this API, about the returning value from the start function.

While POSIX defines as returning value a pointer (which could be a reference pointing to memory high above 32 bits under 64 architectures), the windows API defines an integer value, that could be easily used to return pointers, but only safe on 32bits machines.

The moral of the story is that you must use another mechanism to return data from this function to the thread that is expecting data from this function.

Obviously if you are going to return an status code, there is no problem. This only applies to user defined data that is returned as a reference to allocated data.