Приклади

Приклад #1 Прості таймери

Loading...

Висновок наведеного прикладу буде схожим на:

2 секунды прошло
вызывается раз в секунду, первое срабатывание через 2 секунды
итерация = 1
вызывается раз в секунду, первое срабатывание через 2 секунды
итерация = 2
вызывается раз в секунду, первое срабатывание через 2 секунды
итерация = 3
вызывается раз в секунду, первое срабатывание через 2 секунды
итерация = 4
вызывается раз в секунду, первое срабатывание через 2 секунды
итерация = 5
Запускаем одну итерацию
Функция обратного вызова таймера, созданного остановленным
Перезапускаем второго наблюдателя и пытаемся отловить те же события, но не блокируем
Запускаем блокирующий цикл
вызывается раз в секунду, первое срабатывание через 2 секунды
итерация = 8
вызывается раз в секунду, первое срабатывание через 2 секунды
итерация = 9
вызывается раз в секунду, первое срабатывание через 2 секунды
итерация = 10
END

Приклад #2 Періодичний таймер. Спрацьовує раз на 10.5 секунд

Loading...

Приклад #3 Періодичний таймер. Використання callback-функції для перезавдання інтервалу

Loading...

Приклад #4 Періодичний таймер. Спрацьовує кожні 10.5 секунд, починаючи з поточного моменту

Loading...

Приклад #5 Чекаємо, доки STDIN не стане читаним

Loading...

Приклад #6 Використовуємо асинхронне введення/виведення для доступу до сокету

Loading...

Висновок наведеного прикладу буде схожим на:

HTTP/1.1 301 Moved Permanently
Location: http://www.google.co.uk/
Content-Type: text/html; charset=UTF-8
Date: Sun, 23 Dec 2012 16:08:27 GMT
Expires: Tue, 22 Jan 2013 16:08:27 GMT
Cache-Control: public, max-age=2592000
Server: gws
Content-Length: 221
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Connection: close

Приклад #7 Вбудовуємо один цикл в інший

Loading...

Приклад #8 Вбудовування циклу, створеного за допомогою kqueue у цикл за замовчуванням

Loading...

Приклад #9 Перехоплюємо сигнал SIGTERM

Loading...

Приклад #10 Відстежуємо зміну /var/log/messages

Loading...

Приклад #11 Відслідковуємо зміну /var/log/messages. Уникаємо пропуску оновлень за допомогою затримки за одну секунду

Loading...

Приклад #12 Відслідковуємо зміни статусу процесу

Loading...