🐙 Antony
Вот туториал http://www.boost.org/doc/libs/1_64_0/doc/html/boost_asio/tutorial/tutdaytime1.html
🐙 Antony
Команда вторая вот отсюда: tcp::socket socket(io_service); boost::asio::connect(socket, endpoint_iterator);
Anonymous
Команда вторая вот отсюда: tcp::socket socket(io_service); boost::asio::connect(socket, endpoint_iterator);
а разьве "daytime" в query(argv[1], "daytime"); не явно указывает что это 13 порт??
🐙 Antony
13 - это порт с которым соеднияемся (порт сервера), а порт клиента будет динамический (назначенный системой автоматически). Лучше начать освоение Boost.Asio с самого начала, с туториалов вот отсюда: http://www.boost.org/doc/libs/1_64_0/doc/html/boost_asio/tutorial.html
ovf
А чей нравится?
http://www.azquotes.com/quote/1058099
ovf
Cancellation Token
это что-то из .net?
Danil
это что-то из .net?
Это поделие Бориса Сазонова, rethread на гитхабе есть, подробнее можно найти в статье на хабре или же в выступлении на cpp Russia
Danil
Мы же в конфе cxx, кокой дотнет
ovf
нет, это немного не то, весь код я переписывать не собираюсь
ovf
вообще в последний раз в истории unix редизайн пользовательского низкоуровневого api затевали в research unix (posix это research unix v7 + bsd + sysv + ...), что в итоге было явлено публике в виде plan 9 (1989), который, естественно, оказался никому не нужен.
Mikhail
Кто нибудь в курсе, реализация std::thread - это pthread внутри в с++ на linux?
Andrei
Да. Где-то в глубине это pthread
Mikhail
совместими ли std::thread с evthread_use_pthreads из libevent?
Surreal
Да. Компилить даже надо с -lpthread
Или было надо. Не в курсе, как оно сейчас.
Mikhail
А как узнать то?
Surreal
А как узнать то?
Попробовать скомпилить без флага код с std::thread.
Surreal
В gcc (GCC) 6.3.1 20161221 (Red Hat 6.3.1-1) нужен флаг.
Surreal
В clang тоже. Логично, собственно.
Surreal
evthread_use_pthreads что-то с потоками делает или просто указывает, что внутри либы должны posix потоки юзаться?
Surreal
Sets up Libevent for use with Pthreads locking and thread ID functions. У libevent есть интерфейс для взаимодействия с внутренними потоками? Или что вам сделать надо? У std::thread есть native_handle, если вам их подружить надо.
Mikhail
evthread_use_pthreads что-то с потоками делает или просто указывает, что внутри либы должны posix потоки юзаться?
он включает поддержку использование libevent функций из потоков не парясь о блокировках
Mikhail
кароче делает libevent функции thread safe
Surreal
А зачем совместимость с std::thread - то?
Surreal
Вас интересует, безопасно ли вызывать thread safe libevent функцию из нескольких std::thread потоков?
Surreal
libevent, вроде, итак в асинхронность умеет, зачем поверх еще потоки?
Mikhail
libevent, вроде, итак в асинхронность умеет, зачем поверх еще потоки?
Ну, я хочу добавлять эвенты из рдугого потока
RattenKong 🦧🐀🦍️
может глупый вопрос, но будет ли работать программа, которая открывает сишный файл, пишет функцию с верным выражением, затем dlopen'ом берет функцию и запускает это чудо.
Surreal
Ну, я хочу добавлять эвенты из рдугого потока
Гарантий нет. Лучше так не делать, в рассылке пишут про обертку event_base_loop в std::thread. http://archives.seul.org/libevent/users/Mar-2016/msg00007.html
Surreal
И в другой рассылке: If you're using some weird threading library, you'll need to teach Libevent how to use it.
Mikhail
Нет, я именно event_add из другого потока хочу дергать
Surreal
Сделайте функцию, которая обернет event_add мьютексом, и вызывайте ее из потоков.
Mikhail
вариант конечно, но придеться всегда add_event мьютексом оборачивать
Mikhail
и зачем, если есть такая опция
Mikhail
loop в другом потоке действительно обрабатывать не стоит
Светомеч
MonoBrick. Юзал лично на своём EV3, даже победил пару конкурсов.
Nikolay Markov
пацаны и дамы, а есть key-value структура, которую можно примерно с одинаковой производительностью кверить и по тому, и по другому?
Nikolay Markov
или это всегда два словаря/хэша?
Nikolay Markov
попробую, спасибо
Nikolay Markov
а типы там произвольные?
Anonymous
Объясните, пожалуйста
Nikolay Markov
по потреблению памяти она, надеюсь, лучше двух словарей?
Anonymous
Anonymous
Anonymous
почему при увеличении блока в 10 раз потребление памяти не изменилось?
Anonymous
я тут утечки пытаюсь делать
Nikolay Markov
есть шанс, что компилятор выкинул ненужный цикл
Anonymous
асм код смотреть?
Anonymous
еще асм учить) ну а вообще, в теории, должно ведь увеличиться)
Anonymous
?
Nikolay Markov
ну хоть без дублирования, unique_ptr, вот это все?
Anonymous
просто рано или поздно пришлось бы его выучить
Anonymous
в теории, должно ведь больше потреблять? я нигде не накосячил в коде?
Anonymous
выключи оптимизации и проверь
Anonymous
хорошо, спасибо
Surreal
почему при увеличении блока в 10 раз потребление памяти не изменилось?
Потому что указатель далее по коду нигде не используется и компилятор его выкинул.
Daniil
а чо есть conan?
Daniil
https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcR--ZkIfrNuh5v281V9im_P4k3A4ybJpCziY--rJc_0px4d74Gh ?
Anonymous
а чо есть conan?
интересная свистоперделка получается
Anonymous
надо посмотреть
Anonymous
это да
Daniil
хех, если это то что я думаю, то я только сегодня ныл на эту тему
Daniil
в яве добавление зависимости реашается одной строчкой в системе сборки, в go одной командой, а в плюсах.... хехехе
Nikolay Markov
а вот эта вся хрень вокруг bazel?
Nikolay Markov
он так не умеет?
Anonymous
красиво
Anonymous
мне нравится
Anonymous
охуенно же
Anonymous
не всё так гладко в самом деле, не хватает бесшовной интеграции с системной сборки, но это ближе к фантастике.
Anonymous
не суть, завтра потыкаю в эту поделку
Anonymous
да с любой
Anonymous
вот не хочется что-то руками делать)
Anonymous
#закладка
Anonymous
https://www.youtube.com/watch?v=W9DBJunyZyQ первая ссылка из утки