, вы можете, конечно, решить с помощью .map, как было предложено другим ответом. Если вы уже используете babel, вы можете подумать об использовании jsx-control-statements Они требуют немного настройки, но я думаю, что это стоит с точки зрения удобочитаемости (особенно для нереактивного разработчика). Если вы используете linter, есть также команды eslint-plugin-jsx-control-statements
Проблема в том, что select()
обычно имеет встроенный лимит на filedescriptors, которым он может управлять (1024 на большинстве систем). Попробуйте poll
или epoll
, которые могут помочь.
Также обратите внимание, что select()
использует неэффективный алгоритм для управления поиском filedescriptors. Этот алгоритм имеет O (n) вычислительную полноту, whilt epoll
имеет O (1).