🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.objects
1 messages
1 total messages Started by Miroslaw.Makowiecki Tue, 27 Mar 2007 10:27
Strumień tworzony dwuetapowo przy pomocy boost.IOStreams
#16008
Author: Miroslaw.Makowiecki
Date: Tue, 27 Mar 2007 10:27
34 lines
2797 bytes
Mamy oto kod:
 //strumień1
 filtering_stream<input> stream1;
 stream1.push(Liczenie_znakow());
 stream1.push(LIczenie_sumy_md5());
 stream1.push(liczenie_sumy_sha1());
 std::fstream file("/home/gigat/duzy_plik.iso");
 stream1.push(file)
 //strumień2
 filtering_stream<input> stream2;
 stream2.push(Liczenie_sumy_sha256());
 stream2.push(Liczenie_kolejnych_linni());
 stream2.push(gzip_decompressor());
 stream2.push(stream1);
 Jak wiemy linia stream2.push(stream1) powoduje że strumień stream2
 jest mało wydajny,było by wydajne, gdy by zamiast
stream2.push(stream1)
 wsadziliśmy kolejne wywołania push strumienia stream1,ale ja chcę by
 strumień był tworzony dwuetapowo, strumień stream1 robi prawie coś
 innego niż strumień stream2, oczywiste jest że strumień stream2 jest
 połączony ze strumieniem stream1. W moim programie z takim samym
 prawdopodobieństwem korzystam że strumienia stream1 i stream2.
 Oczywiście strumień stream1 i stream2 obudowuję w klasy, którego
 wygoda jest taka sama,jak  korzystanie std::fstream.
 Pytanie czy powyższy sposób postępowania strumienia stream1 i
stream2
 można udoskonalić(pamiętajmy definiujemy strumień dwuetapowo),by
 stream2 był maksymalnie wydajny,tak samo zamiast
stream2.push(stream1)
 gdy byśmy wsadziliśmy kolejne wywołania push w stream1,jeśli to da
się
 to zrobić, to jak?
 Proszę o ewentualne linki i pomoce rozwiązujące mój problem!
 Za każdą pomoc jestem wdzięczny!
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads