Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 11 Oct 2002 14:06:40 +0300
From:      Peter Pentchev <roam@ringlet.net>
To:        Andrei Cojocaru <spinlock_lists@empirequest.com>
Cc:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: Question about light-weight mutex (kind of)
Message-ID:  <20021011110640.GS376@straylight.oblivion.bg>
In-Reply-To: <20021011110508.GR376@straylight.oblivion.bg>
References:  <000d01c270c8$937a2160$0200a8c0@twothousand> <20021011110508.GR376@straylight.oblivion.bg>

next in thread | previous in thread | raw e-mail | index | archive | help

--gJgGjUUWrnN4mpen
Content-Type: text/plain; charset=windows-1251
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Oct 11, 2002 at 02:05:08PM +0300, Peter Pentchev wrote:
> On Thu, Oct 10, 2002 at 07:50:28PM -0600, Andrei Cojocaru wrote:
> > Hello,
> >=20
> > I have a question, please include me in the reply specifically because =
I'm
> > not subscribed to the mailing list. Thanks
> >=20
> > I want a thread to spin atomically on a value until it's equal to 1(i.e.
> > it's waiting for an event), how do I do that? I have no idea.. I want t=
his
> > to be fast, not have to use a mutex each time to protect the value
> > I have an idea of how to do it using atomic assembly statements but I d=
on't
> > want to use assmebly, I want to know if FreeBSD has built-in stuff for =
this.
> >=20
> > Please help thanks.
> >=20
> > This is required because I'm building R/W locks for a transaction syste=
m I'm
> > working on, and I need a way for a thread waiting on a lock to be notif=
ied
> > when a lock is gotten (and without having the thread block [that's why I
> > want it to spin]). Any hints would be appreciated thanks, once again.
>=20
> Would pthread_rwlock_tryrdlock(3) and pthread_rwlock_tryrdlock(3),
> combined with an usleep() or something, do the trick?

Of course, the second one was meant to be pthread_rwlock_trywrlock(3)...

G'luck,
Peter

--=20
Peter Pentchev	roam@ringlet.net	roam@FreeBSD.org
PGP key:	http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint	FDBA FD79 C26F 3C51 C95E  DF9E ED18 B68D 1619 4553
Hey, out there - is it *you* reading me, or is it someone else?

--gJgGjUUWrnN4mpen
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.0 (FreeBSD)

iD8DBQE9prDA7Ri2jRYZRVMRAhuQAJ9K48926OOnfaLkdk+Bk/1AMh8XCgCfaBW1
GbOjBY+grYyUxL9PfF4xgIU=
=xkYo
-----END PGP SIGNATURE-----

--gJgGjUUWrnN4mpen--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021011110640.GS376>