Size: a a a

2021 March 28

C

Crush_my_love in ГОРИ 🔥
Owchick
Что такое ГЦ?)
А чем обусловлена безопасность раста?
Безопасность раста обусловлена тем, что он утечки памяти, а главное висячие указатели в компайл тайме ловит из-за системы лайфтаймов.
источник

O

Owchick in ГОРИ 🔥
Последний раз, когда я о них читал, они никогда не давали гарантий.
источник

C

Crush_my_love in ГОРИ 🔥
Owchick
Последний раз, когда я о них читал, они никогда не давали гарантий.
ну они могут утечки памяти давать, но те утечки, которые заэксплойтить нельзя.
источник

C

Crush_my_love in ГОРИ 🔥
Owchick
Последний раз, когда я о них читал, они никогда не давали гарантий.
висячий указатель вот что опасно
источник

O

Owchick in ГОРИ 🔥
Crush_my_love
ну они могут утечки памяти давать, но те утечки, которые заэксплойтить нельзя.
А у тебя есть опыт работы с Js?
У того замыканиями любая сборка мусора ломается. Есть такие же механизмы у раста, типа замыкания?
источник

C

Crush_my_love in ГОРИ 🔥
Owchick
А у тебя есть опыт работы с Js?
У того замыканиями любая сборка мусора ломается. Есть такие же механизмы у раста, типа замыкания?
нет, не работал с жс. Да, на расте есть замыкания
источник

C

Crush_my_love in ГОРИ 🔥
Owchick
А у тебя есть опыт работы с Js?
У того замыканиями любая сборка мусора ломается. Есть такие же механизмы у раста, типа замыкания?
В расте есть всё, но из-за борроу чеккера асинхронный код писать сложнее, чем на языках с гц
источник

O

Owchick in ГОРИ 🔥
Crush_my_love
ну они могут утечки памяти давать, но те утечки, которые заэксплойтить нельзя.
А о каких эксплойтах идёт речь? Мне казалось кроме переполнения памяти больше ничего такого и нет
источник

O

Owchick in ГОРИ 🔥
Crush_my_love
нет, не работал с жс. Да, на расте есть замыкания
А как он отловит замкнутую переменную, на которую есть ссылка сборщиком мусора?
источник

C

Crush_my_love in ГОРИ 🔥
Owchick
А как он отловит замкнутую переменную, на которую есть ссылка сборщиком мусора?
там у объектов есть лайфтаймы они часто прописываются самим компилятором, но в некоторых условиях надо их явно прописывать самому
источник

C

Crush_my_love in ГОРИ 🔥
Owchick
А как он отловит замкнутую переменную, на которую есть ссылка сборщиком мусора?
ну и еще обмазываются тем же shared_ptr'ами
источник

C

Crush_my_love in ГОРИ 🔥
Arc в расте
источник

O

Owchick in ГОРИ 🔥
Crush_my_love
там у объектов есть лайфтаймы они часто прописываются самим компилятором, но в некоторых условиях надо их явно прописывать самому
Типа, я могу строго указать, что этот объект используется единожды, например во время бутстрапа, а потом указав ему его лайфтайм по каким то принципам, уничтожить его?
источник

C

Crush_my_love in ГОРИ 🔥
Owchick
А о каких эксплойтах идёт речь? Мне казалось кроме переполнения памяти больше ничего такого и нет
я сам не хацкер могу ошибаться как правильно назвать такую уязвимость, но суть её в том, что через такой dangling pointer можно заставить исполнить произвольный код.
источник

C

Crush_my_love in ГОРИ 🔥
Owchick
Типа, я могу строго указать, что этот объект используется единожды, например во время бутстрапа, а потом указав ему его лайфтайм по каким то принципам, уничтожить его?
да, типо того. А если ты в функцию будешь пробрасывать объект который не подходит под этот лайфтайм, то у тебя программа просто не скомпилится
источник

O

Owchick in ГОРИ 🔥
Crush_my_love
да, типо того. А если ты в функцию будешь пробрасывать объект который не подходит под этот лайфтайм, то у тебя программа просто не скомпилится
Звучит прикольно, спасибо.
А чем это отличается от работы с указателями? Разве нельзя отследить отладчиком, что висит в памяти?
источник

C

Crush_my_love in ГОРИ 🔥
Owchick
Звучит прикольно, спасибо.
А чем это отличается от работы с указателями? Разве нельзя отследить отладчиком, что висит в памяти?
ну разница в том, что у тебя программа, которая работает с указателями неправильно не скомпилится и тебе не надо с тем же валгридом корячиться
источник

C

Crush_my_love in ГОРИ 🔥
Owchick
Звучит прикольно, спасибо.
А чем это отличается от работы с указателями? Разве нельзя отследить отладчиком, что висит в памяти?
загугли просто сравнение того же плюсов и раста. На ютабе доклад есть хороший, там объяснятеся наглядно с примерами
источник

O

Owchick in ГОРИ 🔥
Crush_my_love
ну разница в том, что у тебя программа, которая работает с указателями неправильно не скомпилится и тебе не надо с тем же валгридом корячиться
А, понял, тоже здорово.
источник

C

Crush_my_love in ГОРИ 🔥
но проблема раста, что нет ни работ, ни еще нормальных библиотек. Всё сырое пока
источник