Jump to content

    

Вопрос по ThreadX

Могут ли два альтернативных треда (переключаемых посредством suspend/resume) пользоваться одним семафором? Превентивный ответ на естественный вопрос "зачем?" - заплатка к чужому проекту...

Share this post


Link to post
Share on other sites
15 hours ago, Axel said:

Могут ли два альтернативных треда (переключаемых посредством suspend/resume) пользоваться одним семафором? Превентивный ответ на естественный вопрос "зачем?" - заплатка к чужому проекту...

Семафоры в ThreadX специально придуманы для межзадачной синхронизации. Их даже из процедур обслуживания прерываний можно вызывать. 

Share this post


Link to post
Share on other sites
3 hours ago, AlexandrY said:

Семафоры в ThreadX специально придуманы для межзадачной синхронизации. Их даже из процедур обслуживания прерываний можно вызывать. 

Спасибо. Я, к сожалению, нечетко сформулировал вопрос: в моем случае две (альтернативные) задачи ждут одного и того же семафора. 

Share this post


Link to post
Share on other sites
7 minutes ago, Axel said:

Спасибо. Я, к сожалению, нечетко сформулировал вопрос: в моем случае две (альтернативные) задачи ждут одного и того же семафора. 

Это стандартная ситуация - все ждут одного семафора.
 После освобождения семафора первой начнет выполнятся более приоритетная из ждущих задач. 
Если у ждущих задач равные приоритеты, то первой получит управление та, которая первой стала ждать семафора.  

Share this post


Link to post
Share on other sites
9 minutes ago, AlexandrY said:

Это стандартная ситуация - все ждут одного семафора.

Спасибо...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now