task finishes after all controllers writes to socket