Ros_CSharp.CallbackQueue.Disable C# (CSharp) Method

Disable() public method

public Disable ( ) : void
return void
        public void Disable()
        {
            lock (mutex)
            {
                enabled = false;
            }
            notify_all();
            if (cbthread != null)
            {
                cbthread.Join();
                cbthread = null;
            }
        }

Usage Example

Beispiel #1
0
        /// <summary>
        ///     Kills all the things. Called by checkForShutdown
        /// </summary>
        private static void _shutdown()
        {
            lock (shutting_down_mutex)
            {
                if (shutting_down)
                {
                    return;
                }
                shutting_down = true;
                _ok           = false;

                EDB.WriteLine("ROS is shutting down.");

                GlobalCallbackQueue.Disable();
                GlobalCallbackQueue.Clear();

                if (started)
                {
                    TopicManager.Instance.shutdown();
                    ServiceManager.Instance.shutdown();
                    PollManager.Instance.shutdown();
                    XmlRpcManager.Instance.shutdown();
                    if (rosoutappender != null)
                    {
                        rosoutappender.shutdown();
                    }
                }

                started = false;
                _ok     = false;
            }
        }