change to nonblock socket, fix autoload bug