Musze napisac program ktory obciaza procesor, jak to zrobic? zeby jego wykorzystanie bylo kolo 100%. a najlepiej zebym mogl to regulowac. Wiem ze podobny program kiedys byl stosowany do turbo pascala. Ale ja chce sam cos podobnego napisac (tzn. poznac kod :) ).
while true do ;
Wolverine napisał(a)
while true do ;
To jest raczej kod na totalne obciążenie systemu czyli na zwis heheh:)
A wcale ze nie bo:
repeat until false;
Ktos napisał(a)
A wcale ze nie bo:
repeat until false;
dzizas, przeciez to to samo.
Tak na marginesie to smiem watpic czy te konstrukcje generuja 100% obciazenie procesora. IMHO lepiej zastosowac jakies operacje obliczen o zmiennej dlugosci z dzieleniem, mnozeniem, zwiekszyc priorytet watku glownego itd.
Ktos napisał(a)
A wcale ze nie bo:
repeat until false;
A z tą linijką to już inna gadka :P
mi się wydaje, że najlepiej obciąży się procesor cegłą, tylko będzie to wymagać rozkręcenia obudowy i położenia komputera na boku. jeśli obciążenie procesora będzie za małe, można dorzucić płytę. chodnikową.
//
[soczek] [rotfl] - Q
Zawsze może zalać środek obudowy cementem, podstawić kompa zamiast krzesła i siadnąć na nim - no i może bedzie 100% [diabel] [diabel] [soczek] [soczek]
Ja sobie nawet kiedyś napisałem program z dwoma Buttonami bo miałem laptopa w którym był przydźwięk w karcie dźwiękowej jak procek był nie obciążony.
Ten oszałamiający majstersztyk sztuki programistycznej wyglądał tak:
var
Form1: TForm1;
e: Boolean;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
e:=False;
repeat
Application.ProcessMessages;
until e;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
e:=True;
end;
ale robił co trzeba i przydźwięku nie było. Niestety chwilę później zaczynał szumieć wentylator :-(.
BTW na kompie na którym teraz siedzę program zajmuje tylko 50% procka i trzeba uruchomić dwie kopie żeby zajął 100%. Może dlatego że procesor jest HT? Zamiast 2 kopii pewnie można by przerobic go na dwa wątki, ale mi się nie chce :-)