@ProCxx

Страница 2133 из 2477
isnullxbh
14.06.2018
05:31:08
Ребят, всем привет! Подскажите, пожалуйста, кто юзает Boost.Beast - можно ли инстанс io_context стартовать в отдельном потоке? Исходный код: https://goo.gl/od9bGo //------------- Вместо - ioc.run() делать std::thread([](io_context* ioc){ ioc->run(); }, &ioc).detach();

isnullxbh
14.06.2018
05:44:40
Aidar
14.06.2018
07:56:40
Это был вопрос по асио больше

Google
Aidar
14.06.2018
07:57:02
Более того в туториле по асио про это написано где-то в начале

Только не делай detach, ато словишь в лицо

isnullxbh
14.06.2018
08:43:14
Ну я и ловлю - ошибку, связанную с nullptr в std::weak_ptr )

А без детача - не могу - у меня есть абстрактный класс ISocket, и есть конкретные реализации типа CTCPSocket, CUnixSocket и я хотел WebSocket из Beast'а под этот интерфейс запилить

Как-бы запили, но не работает ))

У сервера свой жизненный цикл, вроде for(IWorker* worker: worker) worker->doWork(), как тогда без детача контекст стартануть?

Kirill
14.06.2018
10:16:38


кто поможет, пачаны?

Egor
14.06.2018
10:17:41
iostream поможет

Kirill
14.06.2018
10:17:54
бляяяя.

спасибо)).

asterisk
14.06.2018
10:25:26
не юзай new и delete

это так, бтв

Google
Andrey
14.06.2018
10:26:16
И под админом не сиди (простите за оффтоп)

Alexey
14.06.2018
10:28:50
Хм. А разве новичкам не нужно понять что такое new и delete и хотя бы минимально по граблям потоптаться?

Аттрибутивно-ассоциативный ряд
14.06.2018
10:30:24
“returning references to internal members is widely considered a code smell”. Когда возрат const-ref из класса стал плохим тоном?

Kirill
14.06.2018
10:33:52
не юзай new и delete
я для общего развития.

Vhäldemar
14.06.2018
10:35:18
ну и речь идет о просто reference

Аттрибутивно-ассоциативный ряд
14.06.2018
10:39:13
const-ref норм или тоже дурной тон?

Vhäldemar
14.06.2018
10:46:51
Юра Незнанов
14.06.2018
10:47:36
iostream поможет
ахахахаха

isnullxbh
14.06.2018
10:48:28
Хранить где-то future с потоком
Спасибо за совет, я попробую )

Юра Незнанов
14.06.2018
10:49:03
Хм. А разве новичкам не нужно понять что такое new и delete и хотя бы минимально по граблям потоптаться?
я лично по граблям до сих пор топчусь, когда дело доходит до многобайтовых кодировок в перемешку с однобайтовыми (приветик, Винда)

Aidar
14.06.2018
10:49:34
Спасибо за совет, я попробую )
У asio сервиса вроде проблем нет, но в будущем ты скорее всего забудешь поменять если добавишь логики в этот поток

Ну типа содержимое потока не расширяемо сейчас

isnullxbh
14.06.2018
10:53:43
Мне только-то и нужно чтобы он висел и не багался, если я правильно тебя понял.

@AsGreyWolf, а ты как думаешь, а это в целом норм прикручивать веб-сокеты в систему, в которой юзается поллинг?

yuri
14.06.2018
11:10:57
Хм. А разве новичкам не нужно понять что такое new и delete и хотя бы минимально по граблям потоптаться?
Есть мнение, что новичкам в С++ такое давать не надо. Первый год только на стеке и умных указателях.

Аттрибутивно-ассоциативный ряд
14.06.2018
11:53:31
https://www.reddit.com/r/cpp/comments/8devw1/can_anyone_actually_name_a_compiler_that_doesnt/ Что думаете, посоны? Include guards или #pragma once? Встречали проблемы с #pragma once и pathological paths?

Aidar
14.06.2018
11:56:39
Я встречал проблемы с прагмаонсе которые фиксились гардом потомучто он более детерминирован, но это от кривизны рук

Igor
14.06.2018
12:00:39
один раз я наткнулся на чудо наподобие #ifndef STRINGUTILS_H #define STRINGUTIL_H но чаще я натыкаюсь на принципиальное отсутствие хоть каких-нибудь гардов #pragma ftw #holywar

Google
yuri
14.06.2018
12:02:10
проблема с #pragma once и pathological paths была однажды, но много головной боли не доставила. MSVC

Аттрибутивно-ассоциативный ряд
14.06.2018
12:04:40
хочется уйти от таких вот проблем с инклудгардами, но слегка ссыкотно, потому что гцц и кланг не рекомендуэ пользоваться прагмами, в стандарт не берут. Проект большой и у какого-нибудь кастомера обязательно найдется тулчейн из бородатых 90х который не умеет в прагму %(

Igor
14.06.2018
12:09:02
+
Ссылку в студию про "gcc и clang не рекомендуют".

Аттрибутивно-ассоциативный ряд
14.06.2018
12:19:47
https://github.com/cgmb/guardonce

Vhäldemar
14.06.2018
12:20:36
так, а в чем проблема, компилятор не поддерживает?

Аттрибутивно-ассоциативный ряд
14.06.2018
12:20:44
у нас слегка дурацкие правила для формата инклуд гардов, зависит от типа хедера (паблик АПИ, интернал АПИ, интернал компонент хедер)

Vhäldemar
14.06.2018
12:20:53
или так, поговорить?

pragma once

Igor
14.06.2018
12:21:25
https://github.com/cgmb/guardonce
как-то так, да

Аттрибутивно-ассоциативный ряд
14.06.2018
12:22:47
читал старые доки. новые говорят “норм”. https://gcc.gnu.org/onlinedocs/cpp/Alternatives-to-Wrapper-_0023ifndef.html#Alternatives-to-Wrapper-_0023ifndef

Matwey
14.06.2018
12:58:22
Господа

Нужен совет по шаблонной магии

Alex Фэils?︙
14.06.2018
12:59:25
explicit bool будет в 20-м стандарте

Matwey
14.06.2018
13:00:11
Нужно сделать контейнер с поиском в компайл-тайме у которого ключем выступает тип, а значением переменная некоторого другого типа U.

Типа tuple/array но с индексацией не числами а типами

Andrei
14.06.2018
13:01:07
ребят, есть статические либы, у некоторых на конце буква s на конце, например libname32s.lib - что это?

Alex Фэils?︙
14.06.2018
13:01:10
Google
Alex Фэils?︙
14.06.2018
13:01:28
ребят, есть статические либы, у некоторых на конце буква s на конце, например libname32s.lib - что это?
означает, что дллка не нужна, вся логика внутри статической либы

Andrei
14.06.2018
13:01:50
а без s - это просто экспортированные символы из dll?

Andrei
14.06.2018
13:02:04
спасибо

Alex Фэils?︙
14.06.2018
13:02:12
а что за либа?

Andrei
14.06.2018
13:02:29
В данном случае 32s -- это название подсистемы Windows.
думаю, @AlexFails больше прав, так как одна и та же либа имеет вариант с s и без нее

glew - либа

glew32s glew32

Alex Фэils?︙
14.06.2018
13:02:47
Andrei
14.06.2018
13:03:06
первый раз просто встретился с таким

за 5 лет :D

Alex Фэils?︙
14.06.2018
13:03:28
нормально, это же конвенция, которой они следовали

Igor
14.06.2018
13:03:59
glew32s glew32
статик и динамик либы

Andrei
14.06.2018
13:04:43
но идея хорошая, а то иногда непонятно, это статическая либа или просто export symbols для dll, особенно если размер либы маленький

Oleg
14.06.2018
13:05:03
Лол, словили прикольный баг на 11 плюсах с resiprocate. У них там используются свои SharedPtr. Так в 11 плюсах такой код падает: mem->set(b->get()); set(SharedPtr t) { ... mLast.reset(); ... } SharedPtr get() { ... return mLast; } Это из-за rvo?

Alex Фэils?︙
14.06.2018
13:05:23
надо смотреть асмокод

Google
Aleksandr
14.06.2018
13:14:00
Нужно сделать контейнер с поиском в компайл-тайме у которого ключем выступает тип, а значением переменная некоторого другого типа U.
можно boost::mpl заюзать, проиндексируй список переданных типов: создай список из пар std::pair<T, std::integral_constant<int, Index> >, потом ищи нужную пару по переданному типу, потом вытащи индекс. андерлаинг сторадж - std::array длины равной длине списка.

а, ну можно даже проще. можно смотреть на дистанс между началом последовательности и тем, что вернул find - это и использовать как индекс в массиве. даже без списка пар получается

Tom
14.06.2018
13:46:51
Типа tuple/array но с индексацией не числами а типами
В std::tuple же есть это, не? Единственное, надо только типы про-tag-ить

Аттрибутивно-ассоциативный ряд
14.06.2018
14:34:48
Можете помочь с cmake. мне нужно создать фейко-таргет, для которого задать зависимости, а потом вытащить список зависимостей

project(FakeTarget) add_custom_target(${PROJECT_NAME} EXCLUDE_FROM_ALL) add_dependencies(${PROJECT_NAME} Depenedency_one Dependency_two ) get_target_property(DEPS ${PROJECT_NAME} LINK_DEPENDS) message(STATUS “Deps ${PROJECT_NAME}: ${DEPS}”) результат Deps FakeTarget: DEPS-NOTFOUND

просто список таргетов нельзя, потому что смейк должен “увидеть” зависимости

Baruch
14.06.2018
18:31:24
народ, а кто может организовать митап в Питере по Конану?

Страница 2133 из 2477