Size: a a a

Programming Offtop

2020 November 12

(

( in Programming Offtop
Anton Korotkikh
нужно безусловно, я к тому что как по мне, в большинстве случаев ничего плохого в мутабельности. а иммутабл стоит применять там где он реально нужен - например при разной параллельности
Как по мне, нет ничего плохого в иммутабельности, а мутабл стоит применять там, где он реально нужен - например, когда ты дошёл до момента, когда никуда от мутабельности уже не денешься
источник

AK

Anton Korotkikh in Programming Offtop
(
В правилах работы с мутабельностью. Главным образом, то, что на мутабельный объект может быть только одна мутабельная ссылка в любое время, и это контролируется компилятором
паддажи, а как же тогда различные конкарент структуры? каналы там, мапы, очереди. в той же жабе ссылкой на них может владеть хуева туча тредов, и постоянно с ним  взаимодействовать. либо я не так понял твой пример
источник

(

( in Programming Offtop
Anton Korotkikh
паддажи, а как же тогда различные конкарент структуры? каналы там, мапы, очереди. в той же жабе ссылкой на них может владеть хуева туча тредов, и постоянно с ним  взаимодействовать. либо я не так понял твой пример
Все правильно понял
Про конкаррент структуры честно скажу не знаю, не приходилось с ними работать, но данные, которые используются в другом треде, захватываются с помощью кейворда move
То есть, грубо говоря,

let x = 5; std::thread::spawn(move || { println!("captured {} by value", x) }).join().unwrap();
println(x); // ошибка компиляции
источник

AK

Anton Korotkikh in Programming Offtop
(
Все правильно понял
Про конкаррент структуры честно скажу не знаю, не приходилось с ними работать, но данные, которые используются в другом треде, захватываются с помощью кейворда move
То есть, грубо говоря,

let x = 5; std::thread::spawn(move || { println!("captured {} by value", x) }).join().unwrap();
println(x); // ошибка компиляции
пишут, что мол можно, но надо бы обернуться в Arc
https://doc.rust-lang.org/book/ch16-03-shared-state.html
источник

AK

Anton Korotkikh in Programming Offtop
с другогй стороны, как я понял, у раста пока вообще нет аналога java.util.concurrent
https://users.rust-lang.org/t/why-are-there-no-concurrent-collections-in-std/26934/6

есть отдельные энтузиасты и некая довольно бедная либа crossbeam
источник

BP

Bogdan Panchenko in Programming Offtop
(
Как по мне, нет ничего плохого в иммутабельности, а мутабл стоит применять там, где он реально нужен - например, когда ты дошёл до момента, когда никуда от мутабельности уже не денешься
+
источник

AN

Alexander Nozik in Programming Offtop
(
Как по мне, нет ничего плохого в иммутабельности, а мутабл стоит применять там, где он реально нужен - например, когда ты дошёл до момента, когда никуда от мутабельности уже не денешься
Я даже с тобой соглашусь, если речь не идет о тру-иммутабл и о линкедлистах. Оно слишком дорого. ReadOnly на уровне типов вполне достаточно.
источник

Д

Денис in Programming Offtop
Я правильно понимаю что нельзя создавать анонимные объекты внутри класса чтоб не было утечек памяти?
источник

ML

Mikhail Levchenko in Programming Offtop
Денис
Я правильно понимаю что нельзя создавать анонимные объекты внутри класса чтоб не было утечек памяти?
создавать можно. нужно понимать, куда ты их отдаёшь
источник

AN

Alexander Nozik in Programming Offtop
Денис
Я правильно понимаю что нельзя создавать анонимные объекты внутри класса чтоб не было утечек памяти?
Нет
источник

Д

Денис in Programming Offtop
Mikhail Levchenko
создавать можно. нужно понимать, куда ты их отдаёшь
Ну в конкретном примере в менеджер камеры надо каллбек передать
источник

AN

Alexander Nozik in Programming Offtop
Если речь про котлин, то утечек памяти не бывает. А анонимные объекты никуда отдать нельзя
источник

AN

Alexander Nozik in Programming Offtop
Под анонимными объектами я подразумеваю волдемортов. Если это анонимный инстанс, то можно отдавать и ничего за это не будет. Хотя понимание - это всегда полезно
источник

Д

Денис in Programming Offtop
Alexander Nozik
Если речь про котлин, то утечек памяти не бывает. А анонимные объекты никуда отдать нельзя
Может я выразился не правильно, конструкция типа
object: A(){}
Это анонимный объект?
источник

AN

Alexander Nozik in Programming Offtop
Денис
Может я выразился не правильно, конструкция типа
object: A(){}
Это анонимный объект?
Нет, это инстанс класса А
источник

AN

Alexander Nozik in Programming Offtop
И wrong chat. Давайте отдадим котлину котлиново
источник

Д

Денис in Programming Offtop
Ок
источник

AL

Alexandr Lamdan in Programming Offtop
Всем привет ребята и доброго времени суток.

Мне нужен любой материал про:
- работа с памятью на системах Windows, Linux/Unix, MacOS
- как разрабатывать приложение так чтоб оно было с хорошим потреблением памяти.
- работа с системами на уровне языков C, C++, Rust
- оптимизация памяти, очистка и освобождение памяти и ресурсов

Желательно для языков С, С++ и Rust.

Если нет специально для языков, то просто почитать что и как это работает.

Материал любой можно, видео, книги в pdf, сайты, документации.

Спасибо😊😊😊
источник

AL

Alexandr Lamdan in Programming Offtop
А  то замучался искать, можно и на английском тоже😁😁😁
источник

AN

Alexander Nozik in Programming Offtop
Alexandr Lamdan
Всем привет ребята и доброго времени суток.

Мне нужен любой материал про:
- работа с памятью на системах Windows, Linux/Unix, MacOS
- как разрабатывать приложение так чтоб оно было с хорошим потреблением памяти.
- работа с системами на уровне языков C, C++, Rust
- оптимизация памяти, очистка и освобождение памяти и ресурсов

Желательно для языков С, С++ и Rust.

Если нет специально для языков, то просто почитать что и как это работает.

Материал любой можно, видео, книги в pdf, сайты, документации.

Спасибо😊😊😊
Открываем википедию...
источник