Показать полную графическую версию : C++ garbage Collector
Короче. без лишенего флейма и флуда - кто что по этому поводу думает?
Моё мнение - нафиг не надо. но со скуки для практики можно сделать...
2ivank
1. что то я тебя давно не видел в аське
2. тебе такая фигня для VC2C++ или как_его_там не нужна?
VuDZ
Смотря в каком виде garbage-collector присутствует. Как в Java/Simula/другие языки с продвинутым сборщиками. А вот умные (и всякие их вариации типа ведущих, с сильными/слабыми ссылками) очень даже полезны удобны -- во многих случаях заморачиваться на управлении памяти очень не хочется...
1. что то я тебя давно не видел в аське траблы со временем/инетом...
2. тебе такая фигня для VC2C++ или как_его_там не нужна?Оно у меня уже давно в компилятор превратилось.
VuDZ
А что это такое?......
А взять, да книжку почитать? Ну или сходить к дяде Яndex'у (ya.ru)... ivank.
У меня этот цвет любимый теперь - новая машина такая же :gigi:
Но да чего же сложно сделать нормальный менеджер памяти...
Дык, универсальный менеджер и не нужен. ИМХО лучше каждый раз писать снуля под конкретное применение. Т.к. универсальный менеджер всё равно невозможно написать...
А вообще, я никогда не пытался написать garbage-collector. Мне хватало собственноручного написания аллокаторов для STL и умных указателей....
ты рассуждаешь как чел, который говорит. что надо всё писать начистом API, так как это быстрее :>
На самом деле можно, правда гмороя много, я ща брата напряг этим, пусть практикуется, он вчера что-то там грузил в конфе (сам знаешь в какой)
Почитай самое начало моей ветки CLR vs Runtime2 - там использовалась пародия на memoryManager - скорость выросла раз в 50, 31 сек против 6-8 минут...
Добавлено:
пачему у моейц картинки фон непрозрачный :(
ivank
OK/....просто думал ты для ламера в программирование в 2-х словах объяснить можешь
VuDZ
Я рассуждаю как человек, которочу никогда не нужен был garbage-collector :) Я даже opetrator new никогда не перегружал..
а собственный аллокатор это что по-твоему?
фишка мощная, скорее всего она будет использовать с паре моих проектов, где есть очень жёсткие ограничения по памяти
Слушай. раскажи на мыло, как вы таки тулбары прикольные делаете
Добавлено:
BigMac
Garbage Collector - это такая фигня, которая смотрит за твоими обраениями к памяти и пресекает утечки. Ещё в её обязаности входит дефрагментация памяти. Пример:
int * n = new int;
*n = 2;
int *k = new int;
*k = *n + 1;
*n = new int; // вот тут- утечка памяти, однаго GC замечает, что ты
// присвоил переменной новое значени в памяти,
// не сохранив предыдущее и по-этому, его можно убить
вот так-что
э.. опять не правильно написано - должно быть Було поправлено: VuDZ, чёрти:когда черти:где
а собственный аллокатор это что по-твоему?
Средство оптимизации.
ты это, того, ответь на оффтопик, интересно-же...
ну-ка, покажи исходничек...
А в исходничек странички глянуть лень? Хотя оно не очень-то и читабельно -- я постарался :))
А аллокатор я делал, дабы проптимизировать выделение памяти -- вместо того что бы просто делать new под объект оно смотрело есть ли в буфере лишний объект, енсли есть, то возвращало указатель на него, если нет, то честно делало new. Соответственно вместо "деаллокации" оно просто клало указатель на объект в буффер. Скорость архиватора от этой простой буфферизации многократно возросла...
Слушай, тут изверг я, а не ты - рассказывай, а то у меня нет времени копаться в сорцах :(
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.