МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах
РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ" ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах Гендерна антидискримінаційна експертиза може зробити нас моральними рабами ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів Контакти
Тлумачний словник |
|
|||||||
МультиплексуванняЗастосування в серверних програмах Подійно-орієнтоване програмування застосовується в серверних програмах для вирішення проблеми масштабування на велику кількість одночасних з'єднань. У серверах, побудованих за моделлю «один потік на з'єднання», проблеми з масштабованістю виникають з наступних причин: - занадто великі накладні витрати на структури даних операційної системи, необхідні для опису однієї задачі; - занадто великі накладні витрати на перемикання контекстів. Серверний застосунок при подійно-орієнтованому програмуванні реалізується на системному виклику, який отримує повідомлення події одночасно від багатьох дескрипторів (мультиплексування). При обробці подій використовуються виключно неблокуючі операції введення/виведення, щоб жоден з дескрипторів не перешкоджав обробці подій від інших дескрипторів.
Для мультиплексування сполук можуть бути використані наступні засоби операційної системи: - Select (більшість UNIX систем); - Poll і epoll (Linux); - Kqueue (FreeBSD); - /Dev/poll ( Solaris); - IO completion port (Windows);
Приклади реалізацій - Веб-сервериNgix та Lighthttpd; - Проксі-сервер Squid. 4 Застосування в настільних програмах У сучасних мовах програмування події та обробники подій є центральною ланкою реалізації графічного інтерфейсу користувача. Розглянемо, наприклад, взаємодію програми з подіями від миші. Натискання правої клавіші миші викликає системне переривання, що запускає певну процедуру всередині операційної системи. У цій процедурі відбувається пошук вікна, що знаходиться під курсором миші. Якщо вікно знайдено, то дана подія надсилається в чергу обробки повідомлень цього вікна. Далі, у залежності від типу вікна, можуть генеруватися додаткові події. Наприклад, якщо вікно є кнопкою, то додатково генерується подія натискання на кнопку. Відмінність останньої події в тому, що вона більш абстрактна, а саме, не містить координат курсору, іговорить просто про те, що було вироблено натискання на цю кнопку. Обробник події може виглядати наступним чином:
private void button1_Click (object sender, EventArgs e) { MessageBox.Show ("Була натиснута кнопка"); }
Тут обробник події являє собою процедуру, в яку передається параметр sender, який, як правило, містить покажчик на джерело події. Це дозволяє використовувати одну й ту ж процедуру для обробки подій від декількох кнопок, розрізняючи їх за цим параметром. Різні мови програмування підтримують СОП у різному ступені. Найбільш повну підтримку подій представляють такі з них (неповний список): - Perl; - Java; - C#. Інші мови, у більшості з них, підтримують події як обробку виключних ситуацій.
Тема 5 Типи даних. Перетворення типів Читайте також:
|
||||||||
|