fitSharp.Machine.Application.Shell.ExecuteInApartment C# (CSharp) Method

ExecuteInApartment() private method

private ExecuteInApartment ( ) : void
return void
        private void ExecuteInApartment()
        {
            var apartmentConfiguration = memory.GetItem<Settings>().ApartmentState;
            if (apartmentConfiguration != null) {
                var desiredState = (ApartmentState)Enum.Parse(typeof(ApartmentState), apartmentConfiguration);
                if (Thread.CurrentThread.GetApartmentState() != desiredState) {
                    var thread = new Thread(Run);
                    thread.SetApartmentState(desiredState);
                    thread.Start();
                    thread.Join();
                    return;
                }
            }
            Run();
        }