[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.

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