Autor Beitrag
Nuckey
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 78



BeitragVerfasst: Sa 06.08.11 15:01 
folgende Problehm/frage :
per streamreader öffne ich eine datei,lese denn zeilen weise per readline().
ausblenden Quelltext
1:
string parse = sr.readline()					

parse wird dann auf bestimmte schlüsselwörter untersucht um dann bestimmte funktionen aufzurufen,wobei der funktion die ref. des sreamreadersobject übergebn wird.
ausblenden Quelltext
1:
2:
if(parse.IndexOf(" dingens ") >= 0)
     function(sr);

in dieser unterfunktion wird dann die datei genauer "geparst",hier kommt die grundfarge.
wenn der stream an die unterfunktion übergeben wird ,brauche ich aber dehn gerade ausgelesenen string ,da aber bei der nächsten readline anweisung ,die nächste zeile ausgelesen wird aber ich die vorhergehende brauche,bin ich auf zwei möglichkeiten gekommen.

1. ich speichere dehn vorhergehenden string in einem stringbuilder zwischen

2. ich setze dehn stream per Discardbuffer und position = 0 auf anfang des streams

jetz meine eigentliche frage wie stark beansprucht discardbuffer dehn speicher ?

mfg Nuckey
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Sa 06.08.11 15:20 
Ich sehe das Problem nicht - übergib doch einfach zusätzlich parse.

PS: bittebittebitte, den ohne h!

_________________
>λ=
Nuckey Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 78



BeitragVerfasst: Sa 06.08.11 15:43 
hio kha

ich üb schon mal für die nächste rechtschreibreform ;)

es eigentlich kein problem an sich,eigentlich geht es mir um die funktion discardbuffer,wie es mit resourcen umgeht,sprich wenn ich dehn stream zurücksetze auf anfang,in wie weit geht es zu lasten des speichers ?

naja so in der richtung

mfg nuckey
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Sa 06.08.11 16:04 
user profile iconNuckey hat folgendes geschrieben Zum zitierten Posting springen:
ich üb schon mal für die nächste rechtschreibreform ;)
Solange dir bewusst ist, dass schlechte Form nicht unbedingt die Antwortbereitschaft erhöht...

Ich weiß nicht, wo du da eine besondere Beanspruchung des Speichers vermutest. Der Puffer hat ja eine (kleine) konstante Größe, die dir egal sein dürfte. Aber natürlich wird beim nächsten ReadLine dann eine neue String-Instanz erzeugt, obwohl es schon einen String für die erste Zeile gibt.

_________________
>λ=
Nuckey Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 78



BeitragVerfasst: Sa 06.08.11 16:17 
habe es mir mal mit ILSpy angeschaut ,intern wird mit dehn StringBuilder gearbeitet und discardbuffer ,da werden nur einige variablen auf 0 gesetzt,also vom ersten blick her dürfte das einsetzen von discardbuffer keine "schwerwiegenden" speichereinbrüche nach sich ziehn .

dank die erst mal kha

mfg nuckey