Mar. 25th, 2017

и все никак не добью чертовых демонов мониторинга неба! Перезапуск по крону 1 раз в сутки — не вариант, т.к. почему-то клиент, слушающий сокет, не отмирает, а продолжает висеть на закрытом сокете.
А у демона другая проблема, вот этот кусок кода:
        if(pthread_create(&handler_thread, NULL, handle_socket, (void*) &newsock))
            WARN("pthread_create()");
        else{
            DBG("Thread created, detouch");
            pthread_detach(handler_thread); // don't care about thread state
        }

запускает поток для очередного клиента. Но по непонятной причине после того, как клиент отвалится, поток продолжает висеть в качестве зомби!
Думаю, надо временно логгирование действий забульбенить с таймаутами, чтобы выяснить наконец-то, где же кроется косяк. Вот такой из меня рукожопый горе-погромист.
Иначе не назовешь! Я не знаю, что за чудак на букву "М" обозвал это [censored] "Scientific", но то, что к науке оно имеет отношение примерно как РАЕН, ясно на все 100!
"Из коробки" имеем: systemd, networkmanager и unicode! "Отличный" набор, чтобы свои сервисы запускать и что-то вообще разрабатывать… Дальше — больше: библиотеки и заголовочные файлы находятся в разных пакетах! Вот тебе и scientific… Хочешь что-то посчитать? Поставь себе еще 100500 "dev" пакетов!
В общем, таки гента значительно лучше справляется со званием "scientific linux", ей только не хватает нормального пакетного менеджера, написанного на сях, а не на псевдоЯП.

July 2017

S M T W T F S
      1
23 4 5 6 78
9 101112 131415
16171819 202122
23242526272829
3031     

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 25th, 2017 04:47 am
Powered by Dreamwidth Studios