Документация Gwan утверждает, что скрипты C с использованием сокетов BSD прозрачно управляются асинхронно.Как gwan реализует асинхронные действия?
Как я могу убедиться, что данный фрагмент кода/библиотеки, который я использую в сценарии C, будет вести себя асинхронно при выполнении сетевой операции? Например, есть ли способ проверить это в журналах?
У меня был бы аналогичный запрос при выполнении ввода-вывода. Например, пример imgsz.c читает изображения с диска через ImageMagick .MagickReadImage() fonction. Работает ли эта операция чтения диска асинхронно? Или если imgsz.c пример можно переписать (например, с xbuf_frfile() и MagickReadImageBlob()?
Заранее спасибо за вашу помощь
Описывает ли ограничение, которое вы описываете для дискового ввода-вывода, для самого g-wan (например, для обслуживания статических файлов) или просто для доступа к файлам в сценариях C. – ehubin
Это (системное) ограничение epoll, так что это для G-WAN и его скриптов. Другие механизмы позволяют файловому IO делать asynchromous, но это не имеет особого значения для сервера, такого как G-WAN, поскольку узким местом здесь является сетевой IO (а не файл IO). – Gil