LINUX.ORG.RU

pthread


0

0

Как одной ните, подсунуть семафор, созданый в другой нити? Или иначе - стартовала нить, создала counter семафор, и как теперь сделать так, чтобы этот семафор сбрасывался, когда в той нити, котоаря до этого работала, создавалось условие.

Мне кроме только как всякие связные списки итд, ничего в голову не приходит.

Через общую память (структуру данных, например) ?

roy ★★★★★
()
Ответ на: комментарий от Artem-Dnepr

> Делаю массив pthread_t thread[64]; Как узнать, что к примеру thread[22] свободна или нет?

Завести ещё bool used[64]; :) Или использовать "всякие связные списки".

const86 ★★★★★
()
Ответ на: комментарий от Artem-Dnepr

>> Завести ещё bool used[64];

> думал, не красиво: может быть ситуация когда нити уже нет, а флаг все еще висит.

Ну пусть сама нить перед завершением и сбрасывает флаг. Если боишься, что сдохла, не сбросив, потыкай её веточкой^W pthread_kill'ом.

const86 ★★★★★
()
Ответ на: комментарий от const86

> pthread_kill

если код должен быть переносимым, лучше никого не пытаться убивать.

gag ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.