/// <summary> /// Asynchronously changes the icon of AnyBar /// </summary> /// <param name="image"></param> /// <returns></returns> public async Task ChangeAsync(AnyBarImage image) { await _socket.SendToAsync( new ArraySegment <byte>(image.ToByteArray()), SocketFlags.None, _endPoint).ConfigureAwait(false); }
/// <summary> /// Synchronously changes the icon of AnyBar /// </summary> /// <param name="image"></param> public void Change(AnyBarImage image) { _socket.SendTo( image.ToByteArray(), SocketFlags.None, _endPoint); }
/// <summary> /// Asynchronously changes the icon of AnyBar /// </summary> /// <param name="image"></param> /// <returns></returns> public Task ChangeAsync(AnyBarImage image) { var tcs = new TaskCompletionSource <int>(_socket); var buffer = image.ToByteArray(); _socket.BeginSendTo(buffer, 0, buffer.Length, SocketFlags.Broadcast, _endPoint, iar => { var innerTcs = (TaskCompletionSource <int>)iar.AsyncState; try { innerTcs.TrySetResult(((Socket)innerTcs.Task.AsyncState).EndSendTo(iar)); } catch (Exception e) { innerTcs.TrySetException(e); } }, tcs); return(tcs.Task); }