adspace


What are STA And MTA in threading?

Answer Posted / kiran kumar reddy

The Thread will create and enter a multi threaded apartment.
The Thread will create and enter a Single threaded apartment.

An apartment is a logical container within a process for
objects sharing the same thread access requirements. All
objects in the same apartment can receive calls from any
thread in the apartment. The .NET Framework does not use
apartments, and managed objects are responsible for using
all shared resources in a thread-safe manner themselves.

Because COM classes use apartments, the common language
runtime needs to create and initialize an apartment when
calling a COM object in a COM interop situation. A managed
thread can create and enter a single-threaded apartment
(STA) that allows only one thread, or a multithreaded
apartment (MTA) that contains one or more threads. You can
control the type of apartment created by setting the
ApartmentState property of the thread to one of the values
of the ApartmentState enumeration. Because a given thread
can only initialize a COM apartment once, you cannot change
the apartment type after the first call to the unmanaged code.

Is This Answer Correct ?    13 Yes 8 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

How to assign Null value to Var?

1066


What is an abstract class c#?

970


Why can't we use a static class instead of singleton?

957


What is expression tree in c#?

999


Which namespaces are necessary to create a localized application?

1143


How do you inherit a class into other class in c#?

996