Alexander
ну по крайней мере быстрей бы в 5 раз было бы
Ivan
Αλεχ
Αλεχ
я поставил винду с нуля
Αλεχ
2017 студию
Αλεχ
раст
Αλεχ
и чет все блять работает
Αλεχ
Alexander
red75prime
и чет все блять работает
Когда-то были проблемы с VS2017, но сейчас нужно очень внимательно не замечать инструкций, чтобы ничего не работало.
Αλεχ
Αλεχ
я понимаю когда надо чтобы еще нативный код собирался
Αλεχ
но чтобы не собрался растовый надо сильно постараться
Αλεχ
lazy_static! {
pub static ref REKEY_ATTEMPT_TIME : Duration = Duration::new(90, 0);
}
Αλεχ
что за ref?
պլհկ
https://docs.rs/lazy_static/1.1.0/lazy_static/
Αλεχ
не, я lazy_static вроде видел, но не помню чтобы ref юзали
Dmitry
Посоны. Есть кто юзал дизель ?
http://docs.diesel.rs/diesel/query_builder/trait.IntoUpdateTarget.html#tymethod.into_update_target
Вот что нашел по выражению where
Как это юзается правильно ? Мне нужно трейт реализовать ?
պլհկ
Αλεχ
я открыл
Αλεχ
и удивился
Αλεχ
окей, спасибо
պլհկ
такой синтаксис у макроса
պլհկ
возможно ты путаешь с thread_local! {} где нет ref
Αλεχ
возможно
պլհկ
https://docs.rs/lazy_static/1.1.0/src/lazy_static/lib.rs.html#175
Loyd
lazy_static уже не модно
պլհկ
а что ща модно?
Vladimir
Cat
судя по исходникам, в 0.1 уже был ref, но я тоже не помню его
պլհկ
😏
Roma
Kerrigan
не делайте так
Berkus
лучше unsafe чем без unsafe
Berkus
это же обертка над с++
Vladimir
Вы цэ бачылы? Уже третья книга Руста появилась 2018 эдишин
Vladimir
https://doc.rust-lang.org/book/index.html
Anton
Kerrigan
2018 это уже не найтли?
Anton
Kerrigan
Ivan
Разве не бета?
Cat
Вы про книгу или про cargo feature edition?
Kerrigan
про сам раст
Αλεχ
ээ, как же так
Αλεχ
он же в сентябре должен быть
Αλεχ
с 1.29
Berkus
а некоторым завезли пораньше
Kerrigan
вы меня путаете
Berkus
edition-2018 сейчас в бете/превью
Αλεχ
let (suspects_tx, suspects_rx) = mpsc::channel();
let mut start_idx = 0;
let mmaps_ref = sync::Arc::new(mmaps);
loop {
let t_start_idx = start_idx;
let t_end_idx = cmp::min(start_idx + CHUNK_SIZE, size);
if start_idx == t_end_idx {
break;
}
let mmaps_ref = mmaps_ref.clone();
let suspects_tx = suspects_tx.clone();
thread::spawn(move || {
let suspects = suspect_positions(mmaps_ref.as_ref(), t_start_idx, t_end_idx);
suspects_tx.send(suspects).unwrap();
});
start_idx = t_end_idx;
}
drop(suspects_tx);
кто-нибудь может объяснить? Почему дроп и как это работает ваще?
Cat
Drop просто закрывает канал, вроде
Αλεχ
зачем вообще явно дропать? Типа чувак о перфомансе заботится?
Berkus
чувак явно прописал "закрыть конал"
Berkus
мало ли там scope у него не кончился
Αλεχ
это из статьи выше
Sergey
так а где почитать, какие фичи в 2018 edition?
Sergey
спасибо
Ray
Поставил vs15 и заработал раст.
Ray
Всех благодарю за помощь
Αλεχ
Поставил vs15 и заработал раст.
вывод: ты не поставил одну нужню галку, и из-за этого поставил еще один компилятор (в котором ВСЕ галки неотключаемые), Молодец чо :)
Αλεχ
ну если места не жалко то хороший вариант
Anton
@berkus ты вроде пишешь в саблайме на расте?
պլհկ
R
分解物質
> establish_connection
Dmitry
?
Berkus
Anton
и что
уже все, была проблема с рлс, решили
Berkus
а, ок
Vladimir
и что
О лол, и ты пишешь саблайм на расте?
Vladimir
Или ты ток плагин к саблайму?
Αλεχ
почему не компилится? https://play.rust-lang.org/?gist=7c47f95b91d3430d8df5ae2b5d5f4569&version=stable&mode=debug&edition=2015
Αλεχ
если закомментить impl Drop то все ок
Αλεχ
я думал компилятор просто вызывает кастомную логику если имлементирован дроп, а он прям сильно меняет поведение программы
Маjко
https://play.rust-lang.org/?gist=bb216a30588853467a1ea22454a1206d&version=nightly&mode=debug&edition=2015
Маjко
Потому что nll еще не завезли