Re: LP64/P64 model API issue #2

2005-05-18 Thread Branko Čibej
William A. Rowe, Jr. wrote: size_t is an unsigned integral type that holds the value of a sizeof operation. The relationship you mention need not be true on a 64-bit platform. There you are wrong - as I've been posting about LP64 or P64 architectures (such as Win64). Um. Even on those archite

[STATUS] (apr) Wed May 18 23:45:15 2005

2005-05-18 Thread Rodent of Unusual Size
APACHE PORTABLE RUNTIME (APR) LIBRARY STATUS: -*-text-*- Last modified at [$Date: 2005-03-17 13:57:42 -0500 (Thu, 17 Mar 2005) $] Releases: Standalone 1.1.1 : released March 17, 2005 1.1.0 : released January 25, 2005 1.0.1 : released November 18, 2004

[STATUS] (apr-util) Wed May 18 23:45:22 2005

2005-05-18 Thread Rodent of Unusual Size
APRUTIL LIBRARY STATUS: -*-text-*- Last modified at [$Date: 2005-03-17 14:03:13 -0500 (Thu, 17 Mar 2005) $] Release: 1.1.2 : released March 17, 2005 1.1.1 : not released 1.1.0 : released January 25, 2005 1.0.1 : released Novem

Re: counting semaphores

2005-05-18 Thread Aaron Bannert
Have you looked at the apr_thread_cond_* API? These are virtually identical to POSIX Condition Variables, and can be used to do what you're talking about. -aaron On May 18, 2005, at 4:09 AM, Bruno Haas wrote: I am quite surprised that there are no counting semaphores in apr. What I would need to

Re: LP64/P64 model API issue #2

2005-05-18 Thread William A. Rowe, Jr.
At 09:35 AM 5/18/2005, Joe Orton wrote: >On Wed, May 18, 2005 at 02:41:48AM -0500, William Rowe wrote: >> At 09:01 AM 5/17/2005, Joe Orton wrote: >> >On Mon, May 16, 2005 at 01:39:20PM -0500, William Rowe wrote: >> >> Issue #1; How to manipulate nelts in apr_table_entry? >> >> >> >> We can preser

Re: LP64/P64 model API issue #2

2005-05-18 Thread William A. Rowe, Jr.
At 11:24 AM 5/18/2005, Andrew Binstock wrote: >Quick note re: > >> It's embodied by the patch below - the delta of two pointer >> offsets result in a size_t (by definition). On LP64/P64, the >> sizeof(int) < sizeof(size_t). > >That's not the definition of size_t. The delta of >two pointers you're

Re: counting semaphores

2005-05-18 Thread Jeff Trawick
On 5/18/05, Dan Johnson <[EMAIL PROTECTED]> wrote: > I also don't understand why semaphores are missing from APR, especially > since mutexes seem to have been implemented on top of them in many > cases. This must have been a deliberate choice, but why? I would assume that nobody who needed them p

Re: LP64/P64 model API issue #2

2005-05-18 Thread Andrew Binstock
Quick note re: > It's embodied by the patch below - the delta of two pointer > offsets result in a size_t (by definition).  On LP64/P64, the > sizeof(int) < sizeof(size_t). That's not the definition of size_t. The delta of two pointers you're referring to is ptrdiff_t. size_t is an unsigned inte

RE: counting semaphores

2005-05-18 Thread Dan Johnson
I ran into the same problem and (since I was bound to using just APR) wound up using atomic integer operations combined with a mutex. Basically, a semaphore wait looks like: if (apr_atomic_dec32 (&count) < 0) apr_thread_mutex_lock (mutex); and a semaphore post looks like: if ((apr_int32_

Re: LP64/P64 model API issue #2

2005-05-18 Thread Joe Orton
On Wed, May 18, 2005 at 02:41:48AM -0500, William Rowe wrote: > At 09:01 AM 5/17/2005, Joe Orton wrote: > >On Mon, May 16, 2005 at 01:39:20PM -0500, William Rowe wrote: > >> Issue #1; How to manipulate nelts in apr_table_entry? > >> > >> We can preserve the existing behavior of nelts, defining it

counting semaphores

2005-05-18 Thread Bruno Haas
I am quite surprised that there are no counting semaphores in apr. What I would need to do is have thread A releasing a semaphore for as many times as an event has happened and thread B blocked waiting for the semaphore. The counting semaphore would guarantee that thread B is "woken up" as many

Re: LP64/P64 model API issue #2

2005-05-18 Thread William A. Rowe, Jr.
At 09:01 AM 5/17/2005, Joe Orton wrote: >On Mon, May 16, 2005 at 01:39:20PM -0500, William Rowe wrote: >> Issue #1; How to manipulate nelts in apr_table_entry? >> >> We can preserve the existing behavior of nelts, defining it as >> a simple int. A few casts are required out of the result of some