1. C++ / Говнокод #3983

    +156

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    while(myBot.loop) {
                    sleep(15);
                    myBot.connect(false);
    
                    while(myBot.loop) {
                            if(myBot.client->recv( 750000 )!=ConnNoError) {
                                   	break;
                            } else {
                                    hostent * record = gethostbyname(myBot.client->server().c_str());
                                   	if(record == NULL) {
                                            break;
                                    }
                           	}
                    }
    
                    myBot.disconnect();
           	}

    Бот на gloox. В строчках с 5 по 14 проверяется, не пропал ли линк, и пытается реконнектится, если, собственно, пропал.

    Запостил: kainwinterheart, 14 Августа 2010

    Комментарии (3) RSS

    • А в чем WTF?
      Ответить
      • В том, что:
        1. myBot.client->recv( 750000 )!=ConnNoError есть true при отсутствии соединения в 90% случаев.
        2. hostent * record = gethostbyname(...) пытается получить из myBot.client->server().c_str() ип каждые 0,75 секунды :)
        А ничего более вменяемого самим gloox'ом вроде кагбе и не находится...
        Ответить

    Добавить комментарий