Size: a a a

2020 October 25

w

whoami in Rust Beginners
ip адрес не резолвит что?
источник

MB

Mikail Bagishov in Rust Beginners
Adatan
Как можно безопасно шарить инстанс соединения с БД (tokio-postgres) в коде?
Одно соединение или пул?
источник

A

Adatan in Rust Beginners
пул, полагаю
источник

M

Maxim Bogdanov in Rust Beginners
Александр Мещеряков
Двухфазное заимствование несколько решает эту проблему, но только для случая, когда вложенные заимствования иммутабельные: https://github.com/rust-lang/rfcs/blob/master/text/2025-nested-method-calls.md
Благодарю
источник

M

MrSmith in Rust Beginners
let create_info = vk::InstanceCreateInfo {
           p_application_info: &app_info,
           ..Default::default()
       };
Как это работает?
Есть какие то правила лукапа для таких случаев?
источник

PP

Pavel Perestoronin in Rust Beginners
Всем доброго времени суток!
Хочу использовать использовать переменные, похожие на static внутри функции из C++ (нужны буферы для алгоритмов компьютерной графики, хочу выделить под них место на этапе компиляции). Как максимально подобным образом сделать это в расте? static mut внутри функции + unsafe?
источник

K

Kitsu in Rust Beginners
Pavel Perestoronin
Всем доброго времени суток!
Хочу использовать использовать переменные, похожие на static внутри функции из C++ (нужны буферы для алгоритмов компьютерной графики, хочу выделить под них место на этапе компиляции). Как максимально подобным образом сделать это в расте? static mut внутри функции + unsafe?
unsafe намекает, что лучше избегать мутабельных глобалов и явно передавать буффер
источник

K

Kitsu in Rust Beginners
но да, так можно и будет наиболее близким по смыслу
источник

DF

Dollar Føølish in Rust Beginners
Единственный момент статики внутри функции в крестах инициализируются под мутексом
источник

DF

Dollar Føølish in Rust Beginners
А в расте нет
источник

PP

Pavel Perestoronin in Rust Beginners
Спасибо! Я понимаю, да, но я хочу создать именно static изменяемую переменную, потому что класть на стек 2 буфера, размером с кол-во пикселей экрана не очень хорошо, наверное (учитывая, что я знаю, что это будет использоваться на протяжении всей программы)
источник

DF

Dollar Føølish in Rust Beginners
Так ето ж те же глобалки
источник

PP

Pavel Perestoronin in Rust Beginners
Dollar Føølish
Единственный момент статики внутри функции в крестах инициализируются под мутексом
не знал, спасибо! я пока не параллелю, нужно хоть как-то написать, но на будущее пригодится
источник

DF

Dollar Føølish in Rust Beginners
Просто сахар
источник

DF

Dollar Føølish in Rust Beginners
Посмотрите в сторону уанс_селл
источник

PP

Pavel Perestoronin in Rust Beginners
Dollar Føølish
Посмотрите в сторону уанс_селл
хм, я не уверен. но, кажется, не подойдет.

То есть у меня требования следующие:
матрица 1000х1000 (условно, зависит от заданных размеров окна), где я буду часто изменять по одному элементу (пикселю). В случае с once_cell'ом там будет проверка (насколько я понимаю) при каждом get/set, что может меня сильно замедлить, потому что писать я буду много.
источник

DF

Dollar Føølish in Rust Beginners
Да, вполне возможно что не подходит
источник

EG

Emmanuel Goldstein in Rust Beginners
Pavel Perestoronin
Спасибо! Я понимаю, да, но я хочу создать именно static изменяемую переменную, потому что класть на стек 2 буфера, размером с кол-во пикселей экрана не очень хорошо, наверное (учитывая, что я знаю, что это будет использоваться на протяжении всей программы)
А точно нужен именно глобальный? Не подойдёт просто бокс где-то наверху стека?
источник

EG

Emmanuel Goldstein in Rust Beginners
Как вариант, можно Box::leak'нуть переменную и получить мутабельную 'static-ссылку
источник

PP

Pavel Perestoronin in Rust Beginners
Emmanuel Goldstein
А точно нужен именно глобальный? Не подойдёт просто бокс где-то наверху стека?
ну насколько мне известно, доступ к памяти в куче медленнее, чем к static памяти
источник