Тема: "Реактивне программування", чи можливо для С/С++ ?
Ось мені дуже цікаво чому для С++, нема стандартної реалізації чогось на кшталт ConcurrentBag з С# ?
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → C++ → "Реактивне программування", чи можливо для С/С++ ?
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися
Ось мені дуже цікаво чому для С++, нема стандартної реалізації чогось на кшталт ConcurrentBag з С# ?
Пане ви розумієте що таке С++ ? Питання було не про такий ,м'яко кажучи, рівень абстракції
По-перше, що саме ви маєте на увазі під "реактивним програмуванням"? Я не бачу нічого асинхронного чи базованого на подіях у ConcurrentBag. Де реактивність?
По-друге, далеко не все, що потрібне вам, потрібне й іншим. Візьміть одну з 100500 лівих бібліотек або напишіть свою реалізацію під конкретно вашу задачу; даю 90%, що воно працюватиме не гірше за ConcurrentBag. Нащо роздувати стандартну бібліотеку?
По-третє, ви взагалі в курсі, що C і С++ - різні мови? Якщо так - чому пишете їх разом у питанні?
По-перше, що саме ви маєте на увазі під "реактивним програмуванням"? Я не бачу нічого асинхронного чи базованого на подіях у ConcurrentBag.
нема обмежень у читанні/запису до контейнеру.В цьому це все питання, контейнери С++, при читанні потоко-безпечні, але при записі НІ.На відмінну з реалізаціями певних контейнерів JAVA та C#.
Ну то успадковуйтеся від них і додавайте у відповідні методі м'ютекси, в чому проблема?
Ну то успадковуйтеся від них і додавайте у відповідні методі м'ютекси, в чому проблема?
У стратегії обмазування std::map синхронизаціями. Та й я бачу як до ++ після стандарту 11 року, затято тягнуть ФІЧІ з форків, але й досі чомусь нема потоко захищеного контейнеру, як у мовах форках =/
Так, ще раз: ваше питання не має жодного стосунку до реактивного програмування, правильно?
Чому це раптом std::multiset став std::map?
Ну і так - стратегія обмазування стандартної колекції синхронізаціями. Ви маєте однозначну відповідь на питання, як саме це треба зробити з мінімальними втратами продуктивності? Чи скільки треба варіантів кожної колекції для кожного варіанту синхронізації? То поділіться своїм знанням з іншими смертними. Бо інакше ви пропонуєте додати щось неуніверсальне до стандартної бібліотеки, щоб половина користувачів усе одно брала ліві реалізації, бо їм ваша бібліотека не підходить.
Я завжди мав на увазі що реактивне програмування - це мультипотічність без дедлоків, чи я помилявся ?
Ви маєте однозначну відповідь на питання,як саме це треба зробити з мінімальними втратами продуктивності?
не маю то му і створив цю тему.
Взагалі мені потрібен об'єкт, до якого об'єкти typedef A можуть навалювати данні, а об'єкт typedef B, їх виймати та обробляти.У принципі "ConcurrentBag з С#" це те що мені треба, але в С++ його не затягнули.Що дуже дивно.
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися