This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: strange behavior with threads...
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
--
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