Browse by Tags

Tagged Content List
  • Blog Post: MSDK Synchronization Primitives - SemiMutex

    SemiMutex is a sophisticated type of mutex that mixes exclusive- and shared locks following this widely accepted concept: An attempt to perform an exclusive lock blocks until all active locks are released. An attempt to perform a shared lock blocks until an eventual active exclusive lock is...
  • Blog Post: MSDK Synchronization Primitives - Blocking Counter

    The MSDK Blocking Counter is a simple synchronization primitive that turns out very powerful in modeling threading patterns. It wasn’t originally planned – it emerged during the design of the thread message queue, and proved to be very helpful later on. Basic API Blocking Counter is a counter...
  • Blog Post: MSDK Synchronization Primitives - Event

    Normally event should not deserve any special attention as a synchronization primitive. However, the MSDK event compensates the inconsistent/incomplete behavior of both Win32- and POSIX event primitives. Win32 Event A Win32 event has one of two types: Manual - once signaled, the event...
  • Blog Post: MSDK (Multithreading SDK)

    MSDK is a C++ template library released under the GNU Lesser General Public License (LGPL) http://www.gnu.org/licenses/lgpl.html , which means it is truly free for any purpose. Nothing in MSDK is patented. Since MSDK is a C++ template library, it is distributed only as source code (plus samples and documentation...
  • Blog Post: Windows- and POSIX Threads

    Writing a simple console program in C++ that does some computation, file input/output, and memory structure processing, and that also builds and runs under Windows and multiple UNIX flavors, is quite feasible – not too many #ifdef ‘s are required. Unfortunately when things start scaling up and concurrent...
  • Blog Post: Introduction

    Starting with this post I’m launching a series about multithreading where I’ll share my experience and my ideas about the future. I will not provide basic educational material. Instead, I’ll describe my work on primitives and patterns. If you are looking for a place to start learning, consider the following...
Page 1 of 1 (6 items)