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; }
}
}