Per-Call Services
When the service type is configured for per-call activation, a service instance (the CLR object) exists only while a client call is in progress. Every client request (that is, a method call on the WCF contract) gets a new dedicated service instance. The following list details how per-call activation works, and the steps are illustrated in Figure 4-1:
The client calls the proxy and the proxy forwards the call to the service.
WCF creates a service instance and calls the method on it.
When the method call returns, if the object implements
IDisposable, WCF callsIDisposable.Dispose( )on it.The client calls the proxy and the proxy forwards the call to the service.
WCF creates an object and calls the method on it.

Figure 4-1. Per-call instantiation mode
Disposing of the service instance is an interesting point. As I just mentioned, if the
service supports the IDisposable interface, WCF will
automatically call the Dispose( ) method, allowing the
service to perform any required cleanup. Note that Dispose(
) is called on the same thread that dispatched the original method call, and
that Dispose( ) has an operation context (presented
later). Once Dispose( ) is called, WCF disconnects the
instance from the rest of the WCF infrastructure, making it a candidate for garbage
collection.
Benefits of Per-Call Services
In the classic client/server programming model, using languages such ...