M
Size: a a a
M
M
EG
EG
M
M
EG
let smth = allocate();
thread::spawn(|| {
maybe_halts();
now_use(smth);
});
maybe_halts() завершается, то память нужна до конца треда.maybe_halts(); не имеет входных параметров. Она статически, на этапе компиляции, либо завершается, либо нет.EG
M
M
M
EG
smth нужно освободить сразу), либо нет (и тогда smth освобождать нельзя). Главный тред делает что угодно другое.EG
M
M
EG
M
M
M
AZ
do_send, но он запихивает сообщение в очередь даже если она полнаsend, но оно ждёт ответа, а не этого не нужно.