update, handle all msg one loop