public Task <OperateResult <bool> > ReadBoolAsync(string address) { var tcs = new TaskCompletionSource <OperateResult <bool> >(); m_plc.BeginReadBool(address, read => { tcs.SetResult(read); }); return(tcs.Task); }