Fwd: strange behavior with threads...
jean-luc malet
jeanluc.malet@gmail.com
Wed Jul 29 16:58:00 GMT 2009
Hi!
can someone help me regarding this issue?
I have a multithreaded application (one thread for the GUI and one
thread for background processing [which only sleep at this time]) and
I'm getting connection errors only on cygwin/X (tested on linux and
linux in vm, 2 different linux distribution)
normally all X operation shall be protected with mutexes
any idea?
thanks
JLM
---------- Forwarded message ----------
From: jean-luc malet <jeanluc.malet@gmail.com>
Date: Fri, Jul 24, 2009 at 11:12 AM
Subject: Re: strange behavior with threads...
To: cygwin@cygwin.com
On Thu, Jul 23, 2009 at 4:11 PM, Corinna
Vinschen<corinna-cygwin@cygwin.com> wrote:
> On Jul 23 15:50, jean-luc malet wrote:
>> Hi!
>> I've the following code :
>> void _Window::Start(void* arg)
>> {
>> ThreadArgs args;
>> args.TheWindow=this;
>> args.args=arg;
>> int err = pthread_create(&main_thread,NULL,_Start, (void*)&args);
>> if (err)
>> {
>> throw new Exception(err, "window thread creation error");
>> }
>> }
>> void* _Window::_Start(void* arg)
>> {
>> ThreadArgs* args = (ThreadArgs*) arg;
>> pthread_exit((void*)args->TheWindow->start_routine(args->args));
>> }
>>
>> _Window::_Start is static
>>
>> for some reason that I can't determine it happens that args in
>> _Window::_Start have strange value (args->TheWindow don't contain a
>> valid pointer, ie a pointer on a _Window object)
>
> Maybe you shouldn't let the arg to the thread point to a local
> stack-based variable in the other method which, as you code implies,
> returns after having started the thread...
>
>
> Corinna
>
> --
> Corinna Vinschen Please, send mails regarding Cygwin to
> Cygwin Project Co-Leader cygwin AT cygwin DOT com
> Red Hat
>
> --
> Problem reports: http://cygwin.com/problems.html
> FAQ: http://cygwin.com/faq/
> Documentation: http://cygwin.com/docs.html
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
>
>
Yes, sorry for such lame question :( I should have seen this issue
the code has been modified and has been tested under linux and is now
working as expected under linux, thanks
however I have a X server connection issue
freeglut (./tests/GENERATED/GlutWindowTest): Unable to create direct
context rendering for window ' '
This may hurt performance.
XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"
after 34 requests (32 known processed) with 5 events remaining.
think I will have to post on Cygwin/X ML
thanks for help
JLM
--
KISS! (Keep It Simple, Stupid!)
(garde le simple, imbécile!)
"mais qu'est-ce que tu m'as pondu comme usine à gaz? fait des choses
simples et qui marchent, espèce d'imbécile!"
-----------------------------
"Si vous pensez que vous êtes trop petit pour changer quoique ce soit,
essayez donc de dormir avec un moustique dans votre chambre." Betty
Reese
http://www.grainesdechangement.com/citations.htm
--
KISS! (Keep It Simple, Stupid!)
(garde le simple, imbécile!)
"mais qu'est-ce que tu m'as pondu comme usine à gaz? fait des choses
simples et qui marchent, espèce d'imbécile!"
-----------------------------
"Si vous pensez que vous êtes trop petit pour changer quoique ce soit,
essayez donc de dormir avec un moustique dans votre chambre." Betty
Reese
http://www.grainesdechangement.com/citations.htm
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ: http://x.cygwin.com/docs/faq/
More information about the Cygwin-xfree
mailing list