public void Stop() { if (running == false) { return; } //so consumer can finish m_ring.Stop(); running = false; DebugConsole.Instance.Add("Stopping threads..."); if (m_threadConsumer != null) { m_threadConsumer.Join(); m_threadConsumer = null; } if (m_threadProvider != null) { m_threadProvider.Join(); m_threadProvider = null; } m_Oscillo.Stop(); DebugConsole.Instance.Add("OK\n"); }