[ECOS] cyg_thread_resume

Jonathan Larmour jlarmour@redhat.com
Wed Jan 17 16:23:00 GMT 2001


Paleologos Spanos wrote:
> 
>  Hi,I have a problem using the cyg_thread_resume function.
> I have configured the scheduler to have the bitmap scheduler.I tried to
> modify the scheduler so as to test if it is possible to resume an exited
> thread.However,the thread's state didn't change.
>  What I did was to add after the if loop in line :161 in the sched.cxx
> file the below code :
> Cyg_Thread  *current = Cyg_Scheduler::get_current_thread();
>      cyg_thread_kill ((cyg_handle_t) current);
>        cyg_thread_resume((cyg_handle_t) current);
> 
> I have 2 threads on the application level and I would expect that the
> output should be
> 
>  execution of thread1
>  (resume thread1)
>  execution of thread1
>  (resume thread1)
> execution of thread1
> ....
> ....
> 
>  I tested these commands without the cyg_thread_resume and the thread was
> stopped(because of the cyg_thread_kill i suppose).
>  However adding  the command ofcyg_thread_resume does not restart the
> thread.Why?
> 
>  What am I doing wrong?

Uh... you just killed yourself so you aren't running any more, so how can
you then resume? Another thread has to resume you.

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Un cheval, pas du glue. Pas du cheval, beaucoup du glue. || Opinions==mine


More information about the Ecos-discuss mailing list