correct thread user data allocation

since the socket_thread_t structure handle a pointer pointing on the
user defined data, its size will not change. thus there is no need to
allocate it dynamically