update to perform data send directly with on loop for queueu thread