Асинхронний виклик процедури (, APC) — це комп'ютерна підпрограма, яка виконуються асинхронно, але в межах поточного контексту виконання (тобто в контексті потоку, який викликав APC). Цей принцип подібний до відкладеного виклику процедури (, DPC), але обмежений контекстом поточного процесу.

Опис APC зазвичай реалізується як об'єкт із невеликим обсягом даних (контекст), і цей об'єкт передається службі, яка обробляє очікування, активуючи його, коли відбувається відповідна подія (наприклад, завершення операції введення).

Життєвий цикл APC складається з двох стадій: пасивної стадії, коли він пасивно очікує на вхідні дані, та активної стадії, коли ці дані обробляються так само, як і під час звичайного виклику процедури.

Асинхронна процедура, що може використовуватися повторно, називається актором. У моделі акторів використовуються два порти: один для отримання вхідних даних, а інший (прихований) порт — для їх обробки. У програмуванні потоків даних використовується багато портів, а передавання до служби виконання здійснюється тоді, коли наявні всі вхідні дані.

Реалізація У Microsoft Windows, APC — це функція, що виконується асинхронно в контексті конкретного потоку. APCs можуть генеруватись системою (APC режиму ядра) чи прикладною програмою (APC користувача).

Див. також Сигнал (операційні системи) Асинхронний виклик методу

Примітки