Size: a a a

Rust — русскоговорящее сообществo

2020 October 20

MB

Mikail Bagishov in Rust — русскоговорящее сообществo
Emmanuel Goldstein
Какой есть кроссплатформенный способ открыть что-нибудь IPC'шное?
На юниксе я бы открывал юникс-сокет где-нибудь в $XDG_RUNTIME_DIR
На венде хз
Я хочу унифицированный способ открыть нечто и получить impl Read + Write
Named pipe?
источник

MB

Mikail Bagishov in Rust — русскоговорящее сообществo
Если кроссплатформенно, то я не могу придумать ничего лучше чем TCP сервер на рандомном порту
источник

Э

Эрик in Rust — русскоговорящее сообществo
Можно сделать
#[cfg(unix)]
type imp_Sock = UnixStream;
#[cfg(not(unix))]
type imp_Sock = TcpStream;
источник

Э

Эрик in Rust — русскоговорящее сообществo
Правда там методы не все по именам совпадают.
источник

Э

Эрик in Rust — русскоговорящее сообществo
И по типам ещё. UDS надо Path кормить, а TCP — айпишник.
источник

MP

Mag Pie in Rust — русскоговорящее сообществo
Emmanuel Goldstein
Какой есть кроссплатформенный способ открыть что-нибудь IPC'шное?
На юниксе я бы открывал юникс-сокет где-нибудь в $XDG_RUNTIME_DIR
На венде хз
Я хочу унифицированный способ открыть нечто и получить impl Read + Write
Pipe?
источник

MP

Mag Pie in Rust — русскоговорящее сообществo
источник
2020 October 21

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Mag Pie
Pipe?
Это к дочернему процессу, не?
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
А я хочу, чтобы любой мог подключиться
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Mikail Bagishov
Named pipe?
Named pipe есть в Windows?
источник

MP

Mag Pie in Rust — русскоговорящее сообществo
Emmanuel Goldstein
Это к дочернему процессу, не?
Named pipes это чистой воды ipc, что в винде, что в юниксах
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Эрик
Можно сделать
#[cfg(unix)]
type imp_Sock = UnixStream;
#[cfg(not(unix))]
type imp_Sock = TcpStream;
Это уже типы-обёртки писать придётся, чтобы API унифицировать
источник

MP

Mag Pie in Rust — русскоговорящее сообществo
Emmanuel Goldstein
Named pipe есть в Windows?
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Эта библиотека, вроде как, создаёт анонимные пайпы
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Прикольно
Осталось понять, есть ли абстракция, которая работает и с линуксом, и с вендой
источник

MP

Mag Pie in Rust — русскоговорящее сообществo
Emmanuel Goldstein
Прикольно
Осталось понять, есть ли абстракция, которая работает и с линуксом, и с вендой
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Спасибо
Вроде даже не совсем мёртвый крейт, 46.5к скачиваний в месяц и используется в каком-то блокчейне
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Только апишка странная
Почему-то принимает строку, а не PathBuf или AsRef<Path>
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
То есть в одном методе AsRef<Path>, а в другом String, что совсем непонятно
Ну да ладно, я не гордый
источник

∅ч

∅ ч in Rust — русскоговорящее сообществo
Есть тредпул, только для футурок? Чтобы можно было их запихать миллионами, и выполнялось одновременно только N футурок?
источник