public Task <OperateResult <bool> > ReadBoolAsync(string address)
        {
            var tcs = new TaskCompletionSource <OperateResult <bool> >();

            m_plc.BeginReadBool(address, read =>
            {
                tcs.SetResult(read);
            });
            return(tcs.Task);
        }