From: bindej@rpi.edu
Cc: guile-user@gnu.org
Subject: Re: Guile + pthreads + reentrancy?
Date: Wed, 3 Mar 2004 12:35:31 -0500 [thread overview]
Message-ID: <16454.5987.645837.251040@gargle.gargle.HOWL> (raw)
In-Reply-To: <xy7brndx5j8.fsf@chunk.mit.edu>
Mikael Djurfeldt writes:
> bindej@rpi.edu writes:
>
> > Mikael Djurfeldt writes:
> > > Each thread which has been spawned by scm_spawn_thread, that is.
> > >
> > > scm_spawn_thread calls pthread_create and sets up Guile things. If,
> > > for some reason, you need to create the pthread yourself and want to
> > > later make it able to use Guile, that could be arranged. Please tell
> > > me and I'll add this to the API (this is on the TODO list).
> > >
> > > M
> >
> > I'm now converting my code to use scm_spawn_thread instead of
> > pthread_create. This is not a problem, but there doesn't seem to be
> > any public interface to get a scm_t_thread out of the SCM object.
>
> You're right that there isn't currently any public interface for
> getting the scm_t_thread value out of the SCM object.
>
> > This is a serious problem because even functions such as
> > scm_thread_join take scm_t_thread arguments, and are thus unusable
> > outside of Guile.
> >
> > What should I do about this?
>
> Would it be difficult to use scm_thread_self ()?
Somewhat. The value is supposed to be available to the parent thread
immediately, so to be safe I would need to use a condition variable
and a global variable to communicate.
> We should probably add a selector for this, though. I'll try to add
> it to CVS HEAD today. (Do you need it in 1.6?)
My program requires 1.7 anyway, so no.
_______________________________________________
Guile-user mailing list
Guile-user@gnu.org
http://mail.gnu.org/mailman/listinfo/guile-user
next prev parent reply other threads:[~2004-03-03 17:35 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-23 23:22 Guile + pthreads + reentrancy? bindej
2004-02-24 15:02 ` Mikael Djurfeldt
2004-02-24 15:44 ` Mikael Djurfeldt
2004-02-24 22:58 ` bindej
2004-03-03 0:20 ` bindej
2004-03-03 16:24 ` Mikael Djurfeldt
2004-03-03 17:35 ` bindej [this message]
2004-03-03 16:54 ` Mikael Djurfeldt
2004-03-03 17:38 ` bindej
2004-03-20 23:02 ` Marius Vollmer
2004-02-24 21:19 ` bindej
2004-02-24 21:57 ` Mikael Djurfeldt
2004-02-24 23:07 ` Thien-Thi Nguyen
2004-02-25 3:06 ` Mikael Djurfeldt
2004-02-25 12:54 ` Thien-Thi Nguyen
2004-02-24 22:09 ` Mikael Djurfeldt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/guile/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=16454.5987.645837.251040@gargle.gargle.HOWL \
--to=bindej@rpi.edu \
--cc=guile-user@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).