Pull to refresh
4
0
Александр @beldeveloper

Software Engineer (golang, microservices)

Send message

Вряд ли есть много структурированой информации на эту тему. Думаю, если функция возвращает результат+error, всегда нужно проверять error, и, если error != nil, не использовать результат. И свой код писать так же, если возвращаете результат и пустой error, результат должен быть не nil. Также всегда стоит быть уверенным, что была выделена память под slice или map прежде чем писать туда данные, так как slice и map это всегда неявный указатель. Если не уверены, лучше сделать проверку на nil и вызвать make.

2.3 миллиарда бит информации это всего ~274 МБ.
Не помогает. Shutdown выполняется, а на close все равно эта ошибка. Причем именно когда сокет обрабатывается в новом thread-е. Если же дождаться выполнения thread-а и закрыть сокет в основном потоке, то всё работает хорошо. Очевидно какой-то баг, потому как алгоритм работы с сокетами верный.
В основном потоке сокет закрывается нормально, во второстепенном — с этой ошибкой. Если поможете победить проблему — буду признателен.
На самом деле потоки в PHP могут пригодиться только в узкоспециализированных приложениях и, я думаю, если это действительно нужно, установить расширение не будет проблемой.
Думаю да. Я сейчас занимаюсь разработкой аналитической системы и, если бы платформа была не self-hosted типа, я бы, наверное, использовал потоки для распределения параллельных вычислений на несколько ядер процессора. Разве это не имеет смысл?
Как минимум в статье можно подсмотреть пример использования потоков для сложных вычислений или асинхронных действий.

Information

Rating
Does not participate
Location
Lodz, Польша
Registered
Activity