public static async Task <bool> SendMessageAsync(byte[] buffer) { await _mutex.WaitAsync().ConfigureAwait(false); try { if (!IsJoined) { return(false); } try { await _client.SendToGroupAsync(buffer, 0, buffer.Length); return(true); } catch { return(false); } } finally { _mutex.Release(); } }