![]() |
|
Другие темы раздела | |
C++ Linux Как уменьшить количество подключений к сокету до одного? Всем привет. Вопрос в общем-то идиотский ) Все борются с тем, как увеличить, а мне надо наоборот :) Есть написанный серверный код, который запускает листнер на порту и ждет подключения клиента... krolligator, вот такой костыль имеет место быть :) listen(listener, 1); select(...); aceept(...) listen(listener, 0); работаем с клиентом. https://www.cyberforum.ru/ cpp-linux/ thread2366630.html | C++ Linux HTTP/2.0 как отправить GET-запрос? Всем привет! Протокол HTTP/2.0 становиться популярным и уже многие сайты начали его поддерживать. Но как отправить GET-запрос и получить содержимое интернет-страницы? Знаю только, что нужно сжимать... https://www.cyberforum.ru/ cpp-linux/ thread2362637.html |
C++ Linux Шелл Вот пока что код для шелла, нужна помощь в реализации просмотра истории команд, конвейера,cd и pwd. Чем будет отличаться вызов встроенной в шелл команды от обычной программы которую нужно записать? С... в реализации просмотра истории командman readline конвейераУ вас проблема в парсинге или в самой организации конвейера через пайпы? Чем будет отличаться вызов встроенной в шелл команды от обычной... https://www.cyberforum.ru/ cpp-linux/ thread2365776.html | C++ Linux Передача данных через неименованный канал. Азы По неизвестным мне причинам при попытке передачи данных от процесса-потомка процессу-родителю через неименованный канал процесс-родитель принимает мусор, вместо передаваемой ему последовательности... Вы просто забыли создать канал. Вызовите pipe(fd); перед форком https://www.cyberforum.ru/ cpp-linux/ thread2362654.html |
C++ Linux Пинг-понг трех процессов:два сына и отец
https://www.cyberforum.ru/ cpp-linux/ thread2362780.html Формулировка задания: Реализовать пинг-понг трех родственных процессов – отца и двух сыновей. Коммуникации – через неименованный канал (pipe). Синхронизация – с помощью сигналов. Остановка – при... Вот мой совсем сырой код, проблема в том,что он, во-первых, не всегда заканчивает на 100(иногда на 101Ну у процессов же свои значения счетчика _до_ чтения. Нужно выделить отдельный сигнал для... |
C++ Linux Отлов нажатия клавиатуры в Linux Здравствуйте, может кто то подсказать как сделать глобальный отлов нажатия клавиш клавиатуры? В винде я сделал через WinAPI, а вот как в линухе сделать, чет никак ненайду... пробовал такой вариант ... как сделать глобальный отлов нажатия клавиш клавиатуры? Клавиатуре соответствует один из файлов /dev/input/eventX Рут может читать этот файл. Формат: struct input_event { struct timeval time;... |
C++ Linux Виснет поток в модуле ядра
https://www.cyberforum.ru/ cpp-linux/ thread2363508.html Всем привет. Есть модуль ядра который принимает информацию от программы и записывает ее на плату, мне нужно сделать защиту от зависания программы, т. е. если программа не присылает никакакой... |
C++ Linux Клиент-сервер: ошибка сегментирования (стек памяти сброшен на диск)
https://www.cyberforum.ru/ cpp-linux/ thread2367431.html Здравствуйте. Пишу небольшой клиент-сервер. По заданию клиент посылает на сервер число, а сервер возвращает сумму всех чисел, переданных ему на данный момент. Все написал, скомпилировал так: ggc... int addr_struct_len = sizeof(sock_adress.sun_family) + strlen(sock_adress.sun_family); тут |
C++ Linux Как заставить make продолжать выполнения после failed recipe? Я знаю о замене rm соответствующей встроенной переменной $(RM), но мне нужно универсальное решение типа '-' префикса перед командой. Да, я о нём прочитал, и он должен мне вроде бы подойти, но... просто '-' не работает. Почему? Вам же написали, что ошибка проигнорирована. Если у цели есть другие команды, то они продолжат выполняться. https://www.cyberforum.ru/ cpp-linux/ thread2367026.html |
Получение приоритетов потоков C++ Linux Здравствуйте! Есть задача: Напишите программу, создающую два-три потока, сообщающую приоритеты этих потоков #include <stdlib.h> #include <stdio.h> #include <unistd.h> #include <sys/wait.h>... В общем-то у вас все нормально кроме последовательности pthread_create() + использование pthread_t + проверка а создана ли нить. Просто дефолтный шедулер не имеет приоритетов и код должен показывать... |
C++ Linux Работа с процессами Разработать и отладить процедуру, выполняющую следующие действия: ответвление текущего процесса; запуск трех процессов-потомков; вывод на консоль идентификаторов этих процессов; закрытие процессов в... #include <stdio.h> #include <sys/types.h> #include <unistd.h> int main() { pid_t pid1; pid1 = fork(); |
C++ Linux Клиент-сервер TCP для Linux с fork
https://www.cyberforum.ru/ cpp-linux/ thread2364136.html Помогите написать клиент серверную программу TCP для Linux с fork. Демонстрация должна быть такая: к серверу подключается несколько клиентов и каждый клиент должен передавать сообщения 1(1 клиент... Задание понятно. Что уже сделано и что конкретно не получается? |
724 / 224 / 72
Регистрация: 01.03.2011
Сообщений: 629
|
|
09.12.2018, 14:10 | 0 |
Проблема с синхронизацией процессов - C++ Linux - Ответ 1314054109.12.2018, 14:10. Показов 830. Ответов 1
Метки (Все метки)
Ответ
Тут достаточно хранить сумму как число и использовать __atomic_add_fetch().
Если очень хочется мьютекс, то создавайте его в разделяемой памяти (кстати shmat() достаточно сделать 1раз до fork) с атрибутом PTHREAD_PROCESS_SHARED Вернуться к обсуждению: Проблема с синхронизацией процессов C++ Linux
0
|
09.12.2018, 14:10 | |
Готовые ответы и решения:
1
проблема с синхронизацией Lotus Traveler STM32F429 + LTDC+ VGA - проблема с синхронизацией. Проблема с GetProcesses() и поиском процессов |
09.12.2018, 14:10 | |
Помогаю со студенческими работами здесь
0
Проблема с удалением фоновых рабочих процессов Читалка с синхронизацией Счетчик с синхронизацией с сервером Странность с вертикальной синхронизацией Локальная БД с синхронизацией с сетевой БД |
Новые блоги и статьи
![]() |
||||
Что нового в C# 14
UnmanagedCoder 10.03.2025
Предстоящая версия C# 14 обещает принести изменения, которые сделают разработку еще более приятной и эффективной.
Что стоит отметить, так это влияние сообщества разработчиков на формирование новых. . .
|
Формулы поворота
Igor3D 10.03.2025
Добрый день
Тема
Эти формулы приводятся во множестве тьюториалов, часто под видом "матрица вращения на плоскости".
x' = x * cos(a) - y * sin(a)
y' = y * cos(a) + x * sin(a)
Как бы Вы их. . .
|
Что нового в .NET 10
UnmanagedCoder 10.03.2025
. NET 10 выходит как релиз с длительной поддержкой (LTS), включающей три года обновлений. В этом обновлении Microsoft сфокусировались на нескольких направлениях: производительность, оптимизация. . .
|
Отложенное высвобождение, RCU и Hazard Pointer в C++26
NullReferenced 09.03.2025
Многопоточное программирование стало важной частью современной разработки. Когда несколько потоков одновременно работают с общими данными, возникает целый ряд проблем, связанных с синхронизацией и. . .
|
Неблокирующийся стек на C++26
NullReferenced 09.03.2025
Традиционные способы синхронизации в многопоточном программировании — мьютексы, семафоры, условные переменные — часто превращаются в узкое место в плане производительности. При этом неблокирующиеся. . .
|
Обработка строк в C++26: Новые возможности string и string_view
NullReferenced 09.03.2025
Новый стандарт C++26 предлагает много улучшений для работы с привычными string и относительно новыми string_view.
string_view - это невладеющая ссылка на последовательность символов, появившаяся в. . .
|
Мой первый аддон для Blender 3D, с помощью нейронки (не зная даже азов пайтона, но это не значит что так и с остальным).
Hrethgir 09.03.2025
Потратил весь день. Пол-дня мне хватило, чтобы понять что с версией с 14B мне не одолеть написание функционального кода, на языке с которым я вообще никак не знаком - пайтон. Версия 22B от другого. . .
|
Einstein@Home сегодня исполняется двадцать лет!
Programma_Boinc 09.03.2025
Einstein@Home сегодня исполняется двадцать лет!
Отправлено 19 февраля 2025 года в 17:20:21 UTC
Я хочу поздравить всех наших волонтеров, разработчиков и ученых из Einstein@Home.
Мы официально. . .
|
Заполнители и расширенный набор символов в C++26
NullReferenced 09.03.2025
C++26 представляет два важных обновления: заполнители и расширенный набор символов. Заполнители (placeholders) решают давнюю проблему лаконичности кода в шаблонных выражениях и лямбда-функциях. Они. . .
|
Контракты в C++26
NullReferenced 09.03.2025
Контракты – это механизм, позволяющий указывать предусловия, постусловия и инварианты для функций в коде. Эта функциональность должна была стать частью C++20, но была исключена на встрече комитета. . .
|