示例#1
0
		/// <summary>
		/// 释放非托管资源。
		/// </summary>
		/// <param name="disposing"><b>true</b> 同时释放托管和非托管资源; <b>false</b> 只释放非托管资源。</param>
		private void Dispose(bool disposing)
		{
			if (!this.disposed)
			{
				this.Stop();

				this.channelManager.Dispose();
				this.channelManager = null;
			}

			this.disposed = true;
		}
示例#2
0
		/// <summary>
		/// 初始化管道服务的新实例。
		/// </summary>
		/// <param name="pipeName">管道名称。</param>
		/// <param name="maxNumberOfServerInstances">最大共享实例数。</param>
		/// <param name="listenThreadPriority">监听线程优先级。</param>
		/// <param name="openTimeout">打开连接超时时间。</param>
		/// <param name="sendTimeout">发送数据超时时间。</param>
		/// <param name="receiveTimeout">监听线程等待超时时间。</param>
		public PipeService(string pipeName, int maxNumberOfServerInstances, ThreadPriority listenThreadPriority, int openTimeout, int sendTimeout, int receiveTimeout)
		{
			this.pipeName = pipeName;
			this.maxNumberOfServerInstances = maxNumberOfServerInstances;

			this.listenThreadPriority = listenThreadPriority;

			this.state = PipeServiceState.Init;

			this.openTimeout = openTimeout;
			this.sendTimeout = sendTimeout;
			this.receiveTimeout = receiveTimeout;

			this.channelManager = new PipeServiceChannelManager(this.pipeName);
		}