BT Sözlüğü › Programlama › epoll

epoll

Programlama Svenska → Güncellendi: 2026-10-10

Linux'un tek bir iş parçacığından binlerce bağlantıyı izleme mekanizması; nginx'in, Node'un ve her modern olay döngüsünün temeli.

Öncülleri select ve poll, programın her çağrıda izlenen tüm dosya tanımlayıcılarının listesini vermesini, çekirdeğin de bu listeyi dolaşmasını gerektiriyordu. On bin bağlantıda, üçünün hazır olduğunu öğrenmek için on bin kontrol demekti. epoll bunu tersine çevirir: ilgiyi bir kez kaydedersiniz, çekirdek yalnızca gerçekten bir şey olanları döndürür.

Bu, C10K problemi denen, tek makinede on bin eşzamanlı bağlantıyı yönetme sorununun çözümüydü. BSD ve macOS'taki karşılığı kqueue, Windows'takiyse IOCP'dir. Son yıllarda io_uring, G/Ç çağrılarının kendisini paylaşımlı halka tamponlarına taşıyarak bir adım daha ileri gitti.

← Sözlüğe dön