Re[6]: Мысли о эффективном автоматическом управлении памятью
От: D. Mon Великобритания http://thedeemon.livejournal.com
Дата: 04.11.14 08:05
Оценка: +1
Здравствуйте, Cyberax, Вы писали:

DM>>3) False positives — метод не отличает изменения указателей от изменения неуказателей.

C>То есть? Write barrier нужен для того, чтобы отмечать какие части старого поколения нужно повторно сканировать на предмет указателей на новое поколение.

Если мы делаем card marking через MEM_WRITE_WATCH, то невинная запись инта в старый объект пометит страницу, хотя никаких указателей там не появилось.
Re[2]: Мысли о эффективном автоматическом управлении памятью
От: DarkEld3r  
Дата: 04.11.14 11:35
Оценка: -1
Здравствуйте, Cyberax, Вы писали:

C>В современном Rust'е это выглядит так:

C>
C>let boxed1 = box "Hello";
C>let boxed2 = box(RC) "Hello";
C>

Разве не так?
let boxed2 = Rc::new("Hello");
Re[3]: Мысли о эффективном автоматическом управлении памятью
От: Cyberax Марс  
Дата: 04.11.14 18:54
Оценка: 1 (1)
Здравствуйте, DarkEld3r, Вы писали:

DE>Разве не так?

DE>
DE>let boxed2 = Rc::new("Hello");
DE>

Это немного устаревший синтаксис. Сейчас в Rust добавляются custom allocator'ы с поддержкой GC, так что для правильной работы нужно будет использовать именно 'box'.

http://doc.rust-lang.org/guide-pointers.html#boxes
Sapienti sat!
Re[4]: Мысли о эффективном автоматическом управлении памятью
От: DarkEld3r  
Дата: 04.11.14 20:34
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Это немного устаревший синтаксис. Сейчас в Rust добавляются custom allocator'ы с поддержкой GC, так что для правильной работы нужно будет использовать именно 'box'.

Понятно. Ну сейчас в расте легко "отстать от прогресса".

C>http://doc.rust-lang.org/guide-pointers.html#boxes

Гайд читал, тоже, но там такого не нашёл. Собственно, даже в доках приводится только одно значение std::boxed. Да и в http://play.rust-lang.org новый вариант не работает, кажется.
Re[3]: Мысли о эффективном автоматическом управлении памятью
От: DarkEld3r  
Дата: 04.11.14 20:34
Оценка:
Было бы любопытно узнать с чем niXman не согласен.
Re[5]: Мысли о эффективном автоматическом управлении памятью
От: Cyberax Марс  
Дата: 04.11.14 23:19
Оценка: 1 (1)
Здравствуйте, DarkEld3r, Вы писали:

C>>Это немного устаревший синтаксис. Сейчас в Rust добавляются custom allocator'ы с поддержкой GC, так что для правильной работы нужно будет использовать именно 'box'.

DE>Понятно. Ну сейчас в расте легко "отстать от прогресса".
К счастью, они уже близки к финишной прямой к версии 1.0

C>>http://doc.rust-lang.org/guide-pointers.html#boxes

DE>Гайд читал, тоже, но там такого не нашёл. Собственно, даже в доках приводится только одно значение std::boxed. Да и в http://play.rust-lang.org новый вариант не работает, кажется.
Вот тут в длинных и нудных деталях:
http://discuss.rust-lang.org/t/pre-rfc-placement-box-with-placer-trait/729
https://github.com/pnkfelix/rfcs/blob/fsk-allocator-rfc/active/0000-allocator.md
Sapienti sat!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.