Allow pipe communication between a server and a client.
Inheritance: IDisposable
示例#1
0
        void CreateNewPipeClient()
        {
            if(pipeClient != null)
            {
                pipeClient.MessageReceived -= pipeClient_MessageReceived;
                pipeClient.ServerDisconnected -= pipeClient_ServerDisconnected; 
            }

            pipeClient = new PipeClient();
            pipeClient.MessageReceived += pipeClient_MessageReceived;
            pipeClient.ServerDisconnected += pipeClient_ServerDisconnected;
        }
        void CreateNewPipeClient()
        {
            if (pipeClient != null)
            {
                pipeClient.MessageReceived    -= SafeProcessReceivedMessage;
                pipeClient.ServerDisconnected -= ServerDisconnected;
            }

            pipeClient = new PipeClient();

            pipeClient.MessageReceived    += SafeProcessReceivedMessage;
            pipeClient.ServerDisconnected += ServerDisconnected;
        }
示例#3
0
        void CreateNewPipeClient()
        {
            lock (_lock)
            {
                if (isDisposed)
                {
                    return;
                }

                if (pipeClient != null)
                {
                    pipeClient.MessageReceived    -= SafeProcessReceivedMessage;
                    pipeClient.ServerDisconnected -= ServerDisconnected;
                }

                pipeClient = new PipeClient();

                pipeClient.MessageReceived    += SafeProcessReceivedMessage;
                pipeClient.ServerDisconnected += ServerDisconnected;
            }
        }
示例#4
0
        void CreateNewPipeClient()
        {
            if (pipeClient != null)
            {
                pipeClient.MessageReceived -= SafeProcessReceivedMessage;
                pipeClient.ServerDisconnected -= ServerDisconnected;
            }

            pipeClient = new PipeClient();

            pipeClient.MessageReceived += SafeProcessReceivedMessage;
            pipeClient.ServerDisconnected += ServerDisconnected;
        }
示例#5
0
        /// <summary>
        /// Releases unmanaged and - optionally - managed resources.
        /// </summary>
        /// <param name="disposing">Result: <c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
        protected virtual void Dispose(bool disposing)
        {
            if (!isDisposed)
            {
                // Not already disposed ?
                if (disposing)
                {
                    // dispose managed resources
                    // Not already disposed ?
                    if (pipeClient != null)
                    {
                        pipeClient.Dispose(); // Dispose it
                        pipeClient = null; // Its now inaccessible
                    }
                    if (bw != null)
                    {
                        bw.Dispose(); // Dispose it
                        bw = null; // Its now inaccessible
                    }
                }

                // free unmanaged resources
                // Set large fields to null.

                // Instance is disposed
                isDisposed = true;
            }
        }
        void CreateNewPipeClient()
        {
            lock (_lock)
            {
                if (isDisposed) return;

                if (pipeClient != null)
                {
                    pipeClient.MessageReceived -= SafeProcessReceivedMessage;
                    pipeClient.ServerDisconnected -= ServerDisconnected;
                }

                pipeClient = new PipeClient();

                pipeClient.MessageReceived += SafeProcessReceivedMessage;
                pipeClient.ServerDisconnected += ServerDisconnected;
            }
        }
        /// <summary>
        /// Releases unmanaged and - optionally - managed resources.
        /// </summary>
        /// <param name="isManaged">Result: <c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
        protected virtual void Dispose(bool isManaged)
        {
            // true if not invoked by the GC
            if (isManaged)
            {
                lock (_lock)
                {
                    if (!isDisposed)
                    {
                        // dispose managed resources
                        // Not already disposed ?
                        if (pipeClient != null)
                        {
                            pipeClient.Dispose(); // Dispose it
                            pipeClient = null; // Its now inaccessible
                        }
                        if (bw != null)
                        {
                            bw.Dispose(); // Dispose it
                            bw = null; // Its now inaccessible
                        }
                        // Instance is disposed
                        isDisposed = true;
                    }
                }
            }

            // free unmanaged resources
            // Set large fields to null.

            // Instance is disposed
            isDisposed = true;
        }