using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net.Sockets; using System.Net; using System.Threading; using MECF.Framework.RT.Core.ThreadLock; namespace MECF.Framework.RT.Core.IoProviders.Siemens.Net { /**************************************************************************** * * 应用于一些操作超时请求的判断功能 * * When applied to a network connection request timeouts * ****************************************************************************/ /// /// 超时操作的类 [a class use to indicate the time-out of the connection] /// internal class HslTimeOut { /// /// 实例化对象 /// public HslTimeOut() { StartTime = DateTime.Now; IsSuccessful = false; HybirdLock = new SimpleHybirdLock( ); } /// /// 操作的开始时间 /// public DateTime StartTime { get; set; } /// /// 操作是否成功 /// public bool IsSuccessful { get; set; } /// /// 延时的时间,单位毫秒 /// public int DelayTime { get ; set ; } /// /// 连接超时用的Socket /// public Socket WorkSocket { get; set; } /// /// 用于超时执行的方法 /// public Action Operator { get; set; } /// /// 当前对象判断的同步锁 /// public SimpleHybirdLock HybirdLock { get; set; } } }