Я расскажу вам последовательность, который должен следовать, чтобы назначить политику планирования ваших потоков.
1) Сначала вы создали pthread_attr_t attr
переменную.
2) Инициализировать его - pthread_attr_init(&attr)
.
3) Установить явное наследование: pthread_attr_setinheritsched(&attr,PTHREAD_EXPLICIT_SCHED);
4) Затем установить политику планирования с использованием pthread_attr_setschedpolicy(&attr,SCHED_RR);
5) Наконец, создайте ваш поток pthread_create(&THREAD_NAME, &attr, FN_NAME, ARGS);
Вы можете использовать эту attr
переменную, чтобы создать столько потоков как вы хотите, с политикой SCHED_RR
.
Теперь, как вы проверяете, установлена ли требуемая политика или нет? Вы должны использовать функцию pthread_attr_getschedpolicy
. Обратитесь к странице MAN, чтобы узнать, как ее использовать. http://linux.die.net/man/3/pthread_attr_getschedpolicy
Использование не должно pthread_attr_setschedparam
для установки политики SCHED_RR
для потоков. Эта функция используется для назначения приоритетов вашим потокам. Для получения более подробной информации см. http://linux.die.net/man/3/pthread_attr_setschedparam.
Пожалуйста, перейдите по ссылке, описывающей [** Как задать вопрос **] (http://stackoverflow.com/questions/how-to-ask). Предоставление необходимых деталей, включая ваш код и связанные с ним ошибки, если таковые имеются, позволит всем здесь помочь вам с вашим вопросом. –
@David Я не вижу, чего не хватает в этом вопросе. Вопрос ясен, и все требования к ответу предоставляются. Что вам не хватает? ОП спросил о том, как узнать о некоторой информации, зачем вам нужен код? – fuz
Эй, могу я знать, как это сделать? –