172 похожих чатов

Всем привет, как в расте можно сделать mutex на шареной

памяти? Я что-то ничего найти не могу...

23 ответов

6 просмотров

Опиши, лучше, что ты пытаешься достичь.

Ivan-Krivosheev Автор вопроса
Jøhn Đøꝩsøn
Опиши, лучше, что ты пытаешься достичь.

Один процесс пишет в файл, второй читает на основание этих данных другой файл. Нужно как-то уведомлять второй процесс об измененях в файле)

Ivan-Krivosheev Автор вопроса
Александр Ушаков
https://crates.io/crates/interprocess

Да, я видел его. Но тогда будет три файла, а не хотелось бы) поэтому и спрашиваю про mutex

Ivan Krivosheev
Да, я видел его. Но тогда будет три файла, а не хо...

std::sync::Mutex между процессами шэрить нельзя. Есть биндинги к libc, но pthread это естественно не портабельно

Mikail Bagishov
Если линукс, то можно futex

футекс самое минимальистичное, да

Ivan-Krivosheev Автор вопроса
Александр Ушаков
а почему три?

Потому что там условно говоря: файл с данными + wal файл. Вот и хотел на wal повесить историю с мьютексом

Ivan-Krivosheev Автор вопроса
Mikail Bagishov
Если линукс, то можно futex

🤔 в расте же есть что-то?)

Ivan-Krivosheev Автор вопроса

А condvar на futex получится?

Ivan Krivosheev
🤔 в расте же есть что-то?)

Готовых либ, которые поддерживали не-PRIVATE фьютекс, я не видел

Ivan-Krivosheev Автор вопроса

Condvar, я про него)

Ivan-Krivosheev Автор вопроса

Вообщем, фокусник был пьян и фокус не удался) Сделал следующее: сделал файл, вызвал на нем mmap. Сделал futex на файле, записал туда данные. Читаю их и там фига. А все потому что другой процесс не перечитывает страницы...

Ivan Krivosheev
Вообщем, фокусник был пьян и фокус не удался) Сде...

Читаю, но видимо я тупой. Так и не понял зачем

Ivan-Krivosheev Автор вопроса

Что именно?

Ivan Krivosheev
Что именно?

Зачем нужен мьютекс на шаренной памяти, не понимаю. Наверное потому, что не знаю задачи

Ivan-Krivosheev Автор вопроса
Ivan Krivosheev
Да

боюсь, это не совсем подходит под определение memory safe blazingly fast

А давай без выпендрежий? Понять бы че человек хочет 😂

Абэ-но Сэймэй
А давай без выпендрежий? Понять бы че человек хоче...

изначально он хотел ipc между двумя процессами, и не хотел создавать лишний файл под uds при этом

Похожие вопросы

Обсуждают сегодня

Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
55
подскажите пожалуйста, как мне освободить результат записанный в переменную result? в чем проблема подскажите если МОЖЕТЕ?
Михаил Helper
28
есть тут кто-то , кто только начал изучать си? если проходите курс на степике или как-то сами изучаете, пишите, может, скооперируемся?..
Eule
25
Слушайте, ещё такая интересная задачка. Сделан аудит действий пользователей через триггеры в базе, соответственно каждый пользователь имеет свой логин и пароль в базе. Это пре...
Сергей Бычков
12
Скажите, тут нет проблемы? IMyInterface1 = interface function GetInterface2: IInterface2; ... function TMyInterface.GetInterface2: IInterface2; begin Result := TI...
Ruslan aka DUDE
18
вопрос по москвину - не понимаю вот такого вопроса похоже Сколько разных всегда завершающихся функций с типом a -> a -> b -> a -> a можно реализовать? Две функции одинаково...
Fedor
11
Кстати, раз про скачивание файлов разговор зашел) Сделал бота для себя (транскрибирующего и суммаризирующего встречи) но не ожидал что за 2 месяца 10к пользователей набежит😅...
Andrey Obolenskiy
8
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Утра доброго. Просветите пожалуйста. Хочу сделать rest сервер на делфи. Посмотрел 3 фреймворка: dmvc, Mars, mormot. Ни в одном из них не упоминается ассинхронная обработка вхо...
Сергей Бычков
10
возможно для форматирования TimeStampZ нужен другой механизм, не?
Роман Лях (rgreat)
13
Карта сайта