Arsip: menghentikan proses looping

 
user image
more 15 years ago

kabuki_enemy

begini..., Q bikin program neural network. dalam proses perhitungan, ada proses looping sampe ribuan iterasi bhkn lebih. dosenQ mnta agar proses bisa dibatalkan oleh user, sedangkan program ketika menjalankan proses looping, aplikasinya jadi kaya not responding(kalo diliat di Task-Manager), padahal program msh dlm proses dan selesai. misal: Q pernah ingin nampilin iterasinya dalam label, tp slama proses label tidak berubah, klo dah slsai baru dicetak hasil terakhirnya. menurutQ ne krn proses loopingny(bner g??). klo misalnya bikin dialog yang kaya proses copy, tu gmn. didialog tu kn ada progress ma tombol cancelnya. ato kalo pake button cancel sndri, caranya gmn spy bs diklik slma proses looping jln, cz smua kmponen dalam form, kaya g aktif(g bisa dklik or diapa-apain). pls y mnt bantuannya, cz Q dah mentok ne thanx b4
user image
more 15 years ago

hendrang

Kalau mau pakai button cancel, di dalam loop tambahkan code Application.ProcessMessages contohnya: var isLoopExit: Boolean = False; for i:= 1 to 999999 begin Application.ProcessMessages; if isLoopExit then begin isLoopExit:= False; Exit; end; <yr code> <yr code> . . end procedure TForm1.Button1Click(Sender: TObject); begin isLoopExit:= True; end;
user image
more 15 years ago

pebbie

yap, di dalam looping pake
Application.ProcessMessages;
klo mo keluar dari loop pake
break;
user image
more 15 years ago

mas_kofa

sedangkan program ketika menjalankan proses looping, aplikasinya jadi kaya not responding(kalo diliat di Task-Manager), padahal program msh dlm proses dan selesai.
coba pake thread..........untuk looping
user image
more 15 years ago

Zulkarnain

Oh ya mas aku pernah membuat program seperti itu, dan pernah mengalami hal yang sama, setelah aku perbaiki ga lagi tuch, saranku coba lagi benerin/tata lagi source codenya, maaf mas ya aku ga bisa bantu kamu lebih banyak soalnya kamu ga nyertain source code dari programmu itu agar nanti bisa dianalisa bersama-sama dengan teman-teman yang lainnya.
user image
more 15 years ago

xerion

sudah dijelaskan oleh mas pebbie agar not responding tidak berlebihan, bisa memanggil application.processmessage beberapa kali agar aplikasi bisa ngolah pesan message yang masuk. jadi tidak nampak hang. break bisa dipakai untuk keluar dari proses looping jika ingin batal atau sudah dapat hasil yang dicari jadi procedute berikutnya dilewatin continue bisa dipakai jika pada check data awal bukan yang diinginkan, jadi bisa maju ke loop berikutnya. exit --> jika ingin keluar dari procedure itu. atau untuk loop juga bisa pakai repeat blablabla; application.processmessage; application.processmessage; until UserCancel = true;
user image
more 15 years ago

kabuki_enemy

thanx ya bwt sarannya, tar dicoba. bwt source code tar Q upload biar bisa dianalisa, klo skrg Q g bawa. tar klo ada keslitan Q tanya lagi deh......
user image
more 15 years ago

ekosch

1. buat variabel global misal stop:boolean; 2.buat tombol onkliknya diisi dengan stop:=true; 3. repeat application.prosesmessage; inc(x); until (stop = true) or (x = 1000); beres .. looping akan berhenti jika tombol ditekan atau counter sudah mencapai 1000
user image
more 15 years ago

chakhar86

lebih baik pake thread deh... soalnya kalo ada procedure "application.processmessages" pastinya akan melambatkan programnya karena di block oleh procedure tsb. kalo pake thread, tinggal thread.pause atau thread.exit selesai deh dia.
more ...
  • Pages:
  • 1
Share to

Random Topic

Local Business Directory, Search Engine Submission & SEO Tools FreeWebSubmission.com SonicRun.com