Gmail Calendar Documents Reader Web more »
Recently Visited Groups | Help | Sign in
Google Groups Home
Message from discussion Condition Variables on Win32
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Chris Thomasson  
View profile  
 More options Sep 20 2006, 2:00 am
Newsgroups: comp.programming.threads
From: "Chris Thomasson" <cris...@comcast.net>
Date: Tue, 19 Sep 2006 23:00:58 -0700
Local: Wed, Sep 20 2006 2:00 am
Subject: Re: Condition Variables on Win32
"Chris Thomasson" <cris...@comcast.net> wrote in message

news:XOadnTwGRr4oTo3YnZ2dnUVZ_tydnZ2d@comcast.com...

> "Anthony Williams" <anthony_w....@yahoo.com> wrote in message
> news:8xkf3m6z.fsf@yahoo.com...
>> Hi all,

>> I've been working on implementing condition variables on win32 for the
>> boost
>> thread library (www.boost.org), and I'd like folks here to comment on my
>> algorithm.

> FWIW, here is another technique using one of my heavily fast-pathed
> eventcount algorithms:

Here is another one of my algorithms that might be of interest to you:

http://groups.google.com/group/comp.programming.threads/msg/af00cb599...
(pseudo-code impl)

http://groups.google.com/group/comp.programming.threads/msg/2b5b60961...
(fix)

http://groups.google.com/group/comp.programming.threads/msg/496d9522a...
(fix)

http://groups.google.com/group/comp.programming.threads/browse_frm/th...

IIRC, once you apply the fixes that I outlined in that thread, the
implementation should work... However, there is a caveat: It uses a scheme
that "doesn't rely on a single kernel object as a waitset"; your algorithm
is bound to SCHED_OTHER. I believe that this holds true for your
implementation as well?

Also, how does your implementation cope with POSIX safety, wrt the
race-condition that exists when a thread starts to destroy synchronization
objects; any waiters, anybody?...

;)

In order to achieve proper POSIX safety you need to use static storage
(e.g., fixed arrays of waitsets /w parking interface), or you have to use
GC, PDR, or atomic reference counting...

More on this:

http://groups.google.com/group/comp.programming.threads/browse_frm/th...

http://groups.google.com/group/comp.programming.threads/browse_frm/th...

Most implementations' simply do not take this stuff into account...

;^(...


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google