Skip to Content
Programming WCF Services
book

Programming WCF Services

by Juval Lowy
February 2007
Intermediate to advanced
634 pages
16h 1m
English
O'Reilly Media, Inc.
Content preview from Programming WCF Services

Instance Management and Concurrency

Service-instance thread safety is closely related to the service-instancing mode. A per-call service instance is thread-safe by definition because each call gets its own dedicated instance. That instance will only be accessible by its assigned worker thread and therefore will have no need for synchronization because no other threads will be accessing it. However, a per-call service is typically state-aware. The state store can also be in-memory resources such as static variables. The state store can be subject to multithreaded access because the service can sustain concurrent calls. Consequently, you must synchronize access to the state store.

A per-session service does require concurrency management and synchronization. The reason is that the client may use the same proxy and yet dispatch calls on multiple client-side threads to the service. A singleton service is even more susceptible to concurrent access, and must have synchronized access. The singleton has some in-memory state that all clients implicitly share. On top of the possibility for dispatching calls on multiple threads as with a per-session service, a singleton may simply have multiple clients in different execution contexts, each using its own thread to call the service. All these calls will enter the singleton on different threads from the thread pool, hence the need for synchronization.

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Programming WCF Services, 2nd Edition

Programming WCF Services, 2nd Edition

Juval Lowy
Pro WCF: Practical Microsoft SOA Implementation

Pro WCF: Practical Microsoft SOA Implementation

Chris Peiris, Dennis Mulder, Shawn Cicoria, Amit Bahree, Nishith Pathak
Mastering ASP.NET Web API

Mastering ASP.NET Web API

Mithun Pattankar, Malendra Hurbuns

Publisher Resources

ISBN: 0596526997Supplemental ContentErrata Page