The method also calls StopAcquisition method if it was not done by user.
// Free resources private void Free() { lock (sync) { thread = null; // release events if (stopEvent != null) { stopEvent.Close(); stopEvent = null; } camera.Close(); } }