Я смотрю на многопоточность, и GCD выглядит как намного лучший вариант, чем ручное написание решения с использованием pthread.h
и pthreads-win32
. Однако, хотя похоже, что libdispatch
либо работает, либо скоро начнет работать, на большинстве новых POSIX-совместимых систем ... Я должен спросить, а как насчет Windows? Каковы шансы, что libdispatch
будет портирован на Windows? Какие барьеры мешают этому произойти?
Если бы все сводилось к тому, что I нужно было бы сделать, чтобы преформовать этот перенос?
Редактировать: Некоторые вещи, которые я уже знаю, чтобы начать обсуждение:
- Нам нужен совместимый с блоками компилятор, который будет компилироваться в Windows, нет? Будет ли PLBlocks справиться с этим?
- Можем ли мы использовать время выполнения блоков LLVM ?
- Разве мы не можем заменить все
pthread.h
зависимости в пользовательском пространстве libdispatch
на вызовы APR для переносимости? Или, в качестве альтернативы, используйте pthreads-win32
Я полагаю ...
Редактировать 1: Я слышал, что это совершенно и абсолютно невозможно, потому что libdispatch
зависит (как-то) от kqueue
, что невозможно доступно в Windows ... кто-нибудь знает, правда ли это?