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.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

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

Publisher Resources

ISBN: 0596526997Errata Page