Читаем Programming with POSIX® Threads полностью

pthread_attr_getstacksize.......................................................[_POSIX_THREAD_ATTR_STACKSIZE]

int pthread_attr_getstacksize (

const pthread_attr_t *attr, size_t *stacksize);

Determine the size of the stack on which threads created with attr will run.

References: 2, 5.2.3

Headers: 

Errors: [EINVAL]attrinvalid.

[ENOSYS] stacksize not supported. Hint: Use on newly created attributes object to find the default stack size.

pthread_attr_init

int pthread_attr_init (

pthread_attr_t *attr);

Initialize a thread attributes object with default attributes.

References: 2, 5.2.3

Headers: 

Errors: [ENOMEM] insufficient memory for attr.

Hint: Use to define thread types.

| pthread_aftr_setdetachstate

int pthread_attr_setdetachstate ( pthread_attr_t *attr, int detachstate);

Specify whether threads created with attr will run detached.

detachstate

PTHREAD CREATE JOINABLE

PTHREAD CREATE DETACHED

Thread ID is valid, must be joined.

Thread ID is invalid, cannot be joined, canceled, or modified.

References: 2, 5.2.3

Headers: 

Errors: [EINVAL]attrinvalid.

[EINVAL] detachstate invalid. Hint: You can't join or cancel detached threads.

pthread_attr_setstackaddr.....................................................[_POSIX_THREAD_ATTR_STACKADDR]

int pthread_attr_setstackaddr ( pthread_attr_t *attr, void *stackaddr);

Threads created with attr will run on the stack starting at stackaddr. Must be at least PTHREAD_STACK_MIN bytes.

References: 2, 5.2.3

Headers: 

Errors: [EINVAL]attrinvalid.

[ENOSYS] stackaddr not supported. Hint: Create only one thread for each stack address, and be careful of

stack alignment.

pthread_attr_setstacksize.......................................................[_POSIX_THREAD_ATTR_STACKSIZE]

int pthread_attr_setstacksize ( pthread_attr_t *attr, size_t stacksize);

Threads created with attr will run on a stack of at least stacksize bytes. Must be at least PTHREAD_STACK_MIN bytes.

References: 2, 5.2.3

[EINVAL] attr or stacksize invalid. [EINVAL] stacksize too small or too big. [ENOSYS] stacksize not supported.

Find the default first (pthread_attr_getstacksize), then increase by multiplying. Use only if a thread needs more than the default.

Headers: Errors:

Hint:

pthread_create

int pthread_create (

pthread_t *tid,

const pthread_attr_t *attr,

void *(*start) (void *),

void *arg);

Create a thread running the start function, essentially an asynchronous call to the function start with argument value arg. The attr argument specifies optional creation attributes, and the identification of the new thread is returned in tid.

References: 2, 5.2.3

Headers: 

Errors: [EINVAL] attr invalid.

[EAGAIN] insufficient resources. Hint: All resources needed by thread must already be initialized.

pthread_detach

int pthread_detach (

pthread_t thread);

Detach the thread. Use this to detach the main thread or to "change your mind" after creating a joinable thread in which you are no longer interested.

References: 2, 5.2.3 Headers: 

Errors: [EINVAL] thread is not a joinable thread.

[ESRCH] no thread could be found for ID thread. Hint: Detached threads cannot be joined or canceled; storage is freed

immediately on termination.

pthread_equal

int pthread_equal (

pthread_t tl,

pthread_t t2);

Return value 0 if t1 and t2 are equal, otherwise return nonzero.

References: 2, 5.2.3 Headers: 

Hint: Compare pthread_self against stored thread identifier.

pthread_exit

int pthread_exit (

void *value_ptr);

Terminate the calling thread, returning the value value_ptr to any joining thread.

References: 2, 5.2.3 Headers: 

Hint: value ptr is treated as a value, not the address of a value.

pthread_join

int pthread_join (

pthread_t thread,

void **value_ptr);

Wait for thread to terminate, and return thread's exit value if value_ptr is not NULL. This also detaches thread on successful completion.

References: 2, 5.2.3 Headers: 

Errors: [EINVAL] thread is not a joinable thread.

[ESRCH] no thread could be found for ID thread.

[EDEADLK] attempt to join with self. Hint: Detached threads cannot be joined or canceled.

pthread_self

pthread_t pthread_self (void);

Return the calling thread's ID.

References: 2, 5.2.3 Headers: 

Hint: Use to set thread's scheduling parameters.

sched_yield

int sched_yield (void);

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных