public void Update() { OutgoingMessage om = null; outgoing_message_mutex.WaitOne(); if(outgoing_messages.Count > 0) { om = outgoing_messages.Dequeue(); } outgoing_message_mutex.ReleaseMutex(); if(om != null) { AudioClip ac = AudioClip.Create("voice", om.data.Length, 1, Client.sampleRate, false); ac.SetData(om.data,0); om.callback(om.message,ac); } }