RAD Studio (Common)


Use this dialog box to specify ATL options. These options apply to every COM server in the project.

Single Use 
An instance of the COM server object is created for each client.  
Multiple Use 
All clients operate on a single instance of the COM server object.  
An object is referenced only by the thread in which it was constructed.
Use this option for projects that contain only single-threaded and apartment-threaded objects.  
Objects can be referenced by any thread.
Use this option for projects that contain free-threaded, both-threaded, or neutral-threaded objects.  
All COM server objects are implemented using a single thread.  
The project may be multi-threaded, but each instance of the COM server object must has its own dedicated thread for OLE calls.  
The project may be multithreaded and each instance of the COM server object can receive simultaneous requests from multiple threads.
Your code must provide thread concurrency support.  
Same as Free except that outgoing calls such as callbacks are guaranteed to execute in the same thread.  
Multiple clients can call the object on different threads at the same time, but COM ensures that no two calls conflict.  
Trace Query Interface 
Sends a message to the event log whenever a client makes a QueryInterface call. The event log also shows the status of the call.  
Check Ref Counts 
message is sent to the event log whenever the reference count of a COM server object is increased or decreased. When Check Ref Counts is enabled, an assertion occurs if the project attempts to release the object from memory with a nonzero reference count.  
General Tracing 
Sends a messages to the event log when an ATL function is called.  

Note: Threading Model
options are provided only for backward compatibility. You now specify threading models on a per-object basis.

Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
What do you think about this topic? Send feedback!