tunca Mesaj tarihi: Ocak 18, 2011 Paylaş Mesaj tarihi: Ocak 18, 2011 javada frame/text bazlı amatörce bir oyun yazmaya başladım biraz daha dile hakim olup kendimi geliştirmek için, daha da çok başlardayım ama thread kullanımı hakkında yardıma ihtiyacım var. netten biraz bakınıp bişiler yazdım ama ne kadar doğru implement ettim bilmiyorum. ilgili kod bölümü: http://codepaste.net/zaxy1w basitçe yapmasını istediğim olay, turn player'dayken, player framedeki button a tıklayana kadar threadin durması(combatthread.stop ?), buttona clickledikten sonra turn'ün npcye geçip threadin tekrar baştan başlaması(combatthread.start). ama button'ın içindeki combatthread.start da: "Exception in thread "AWT-EventQueue-0" java.lang.IllegalThreadStateException" hatasını alıyorum. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
aquila Mesaj tarihi: Ocak 18, 2011 Paylaş Mesaj tarihi: Ocak 18, 2011 sleep Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
tunca Mesaj tarihi: Ocak 18, 2011 Konuyu açan Paylaş Mesaj tarihi: Ocak 18, 2011 aynı hatayı alıyorum sleeple de bir de yapmasını istediğim şey sleepden farklı, sleepde belirli bir süre durup kaldığı yerden devam ediyor süre bitince(bildiğim kadarıyla), ama ben sürenin buttona tıklanınca bitmesini ve en baştan başlamasını istiyorum Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Mirage Mesaj tarihi: Ocak 18, 2011 Paylaş Mesaj tarihi: Ocak 18, 2011 Öncelikle herhangi bir class'ın metodlarını kullanmadan önce API okumanı tavsiye ederim. Thread#stop() 'un deprecated olduğunu ve kullanılmaması gerektiğini görüyorsun mesela orda: Thread#stop() Ek olarak onun yerine ne kullanmak gerektiğini de yazmışlar: http://download.oracle.com/javase/1.4.2/docs/guide/misc/threadPrimitiveDeprecation.html Stop/Start öyle kafana göre thread'i durdurup devam ettirmek için değil. Koda tam bakmadım ama tahminen tuşa basılana kadar thread'in durmasını istiyorsun. Thread'in durmasını ya da devam etmesini bir değişken ile kontrol edebilirsin. While döngüsünde sleep kullanarak belirli intervaller ile bu değişkene bakıp ona göre uyumaya devam edersin ya da işini yaparsın. Bu değişkene erişirken synchronized kullanman gerekebilir. Edit: Ayrıca öyle herhangi bir thread'den swing widget'larına erişmemen gerekiyor. Şuna bir gözat: http://java.sun.com/products/jfc/tsc/articles/threads/threads1.html Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
tunca Mesaj tarihi: Ocak 18, 2011 Konuyu açan Paylaş Mesaj tarihi: Ocak 18, 2011 teşekkür ettim mirage dediğin gibi yaptım Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Ceday Mesaj tarihi: Ocak 21, 2011 Paylaş Mesaj tarihi: Ocak 21, 2011 öle sürekli loop dönersen gereksiz CPU kullanımı yaparsın. Thread#wait/notify kullanman gerekiyor. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Mirage Mesaj tarihi: Ocak 21, 2011 Paylaş Mesaj tarihi: Ocak 21, 2011 Dogru wait istedigin amac icin cok daha uygun. Sleep thread senkronize etmek icin degil de bir sonraki yapcagin is icin belli bir süre beklemek icin kullaniliyor genelde. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Öne çıkan mesajlar