Size: a a a

2020 July 29

D

Denis in Rust Async
Anton
Спасибо, чет совсем туплю
дык всегда есть выход, даже если там какой-то жёстко однопоточный код, всегда можно запустить его в отдельном потоке и общаться с остальным миром через каналы
источник

A

Anton in Rust Async
Denis
дык всегда есть выход, даже если там какой-то жёстко однопоточный код, всегда можно запустить его в отдельном потоке и общаться с остальным миром через каналы
итак канал на канале каналом погоняет ) Канал для данных, канал для управления, канал шины (broadcast), хорошо что tokio::select приделали, стало поудобней
источник

D

Denis in Rust Async
Anton
итак канал на канале каналом погоняет ) Канал для данных, канал для управления, канал шины (broadcast), хорошо что tokio::select приделали, стало поудобней
ну а щито поделать
источник

A

Anton in Rust Async
Ну если можно не юзать каналы - нужно их не юзать
источник

D

Denis in Rust Async
согласен
источник

d

diabolo in Rust Async
Denis
согласен
то есть между мьютексом и каналом ты выберешь мьютекс?
источник

A

Anton in Rust Async
Ты смешал мух и котлеты
источник

D

Denis in Rust Async
diabolo
то есть между мьютексом и каналом ты выберешь мьютекс?
в целом — зависит от задачи
если реально много потоков, то лучше мьютекс, если мало потоков — то мб каналы

просто каждый канал — это небольшой оверхед, и если каналов много — то оверхед становится ого-го
источник

D

Denis in Rust Async
ежели мы говорим про токио, то токийский мутекс крайне легковесный
источник

D

Denis in Rust Async
иногда накладные расходы на передачу данных между каналами полностью убивают любой перформанс, в то же время как мутекс лишён этого недостатка
источник

d

diabolo in Rust Async
Denis
ежели мы говорим про токио, то токийский мутекс крайне легковесный
токийский мьютекс — это не мьютекс... черт, меня в хардварь понесло
источник

D

Denis in Rust Async
diabolo
токийский мьютекс — это не мьютекс... черт, меня в хардварь понесло
ну почему, очень даже мутекс, просто он в ядро не ходит, но ему и не надо )
источник

d

diabolo in Rust Async
Denis
ну почему, очень даже мутекс, просто он в ядро не ходит, но ему и не надо )
вот!
источник

D

Denis in Rust Async
ну дык если ты отказываешься от шедулера ОС в пользу шедулера токио, то разумно и мутексы использовать токийские, а не ядерные :)
источник

A

Anton in Rust Async
Denis
в целом — зависит от задачи
если реально много потоков, то лучше мьютекс, если мало потоков — то мб каналы

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

D

Denis in Rust Async
и это самое, теже каналы сделаны либо на локфри-структурах (которые никто не мешает использовать и без каналов), либо на мутексах.. так что всё-таки это в первую очередь — удобство
источник

d

diabolo in Rust Async
Denis
ну дык если ты отказываешься от шедулера ОС в пользу шедулера токио, то разумно и мутексы использовать токийские, а не ядерные :)
какие ос, какие токио, двое суток отладки дикой железки, короче крыша моя поехала, но работает. народ никогда не связывайтесь с риском — это жопа. пойду спать, а то ваще пургу гнать начну 🤣
источник

D

Denis in Rust Async
Anton
Ну вот есть задача хранения определенного стейта допустим хэшмапа, не будешь же ты его гонять по каналам, мютекс тут самое очевидное
тут можно маленькие сообщения гонять :) так в общем-то делают иногда)
но ваще в такой задаче разумней звучит локфри хэшмапа, благо, такие существуют )
источник

D

Denis in Rust Async
diabolo
какие ос, какие токио, двое суток отладки дикой железки, короче крыша моя поехала, но работает. народ никогда не связывайтесь с риском — это жопа. пойду спать, а то ваще пургу гнать начну 🤣
отдыхай! без сна — тяжело, с железками — ещё тяжелей )
источник

D

Denis in Rust Async
Denis
тут можно маленькие сообщения гонять :) так в общем-то делают иногда)
но ваще в такой задаче разумней звучит локфри хэшмапа, благо, такие существуют )
.. хотя иногда мутекс может быть выгодней, чем локфри структуры xD
источник