için desen iptal uzun koşuyoruz yöntemini iptal etmek hafif desen var mı değiştirir: Hafif, hangi böyle bir kod uzun süren yöntem Java
public void longComputations() {
... first step...
if (cancelled) {
rollbackWork();
return;
}
... second step...
if (cancelled) {
rollbackWork();
return;
}
... third step...
if (cancelled) {
rollbackWork();
return;
}
}
ben, bir Görev sınıf yapmak göreve adımları bölmek biliyor nesneler, bir kuyruk yapmak ve sush durum için herhangi bir basit kod yapısı desen var sadece görevleriniz iptal denetimi ile döngü içinde adımlarla adım, ama merak ettim.
+1 GoF komut desen –
nedeniyle yeterince süre için kabul eder. Ancak gerçek cevap, "Hayır, bunun için basit bir kod yapısı yoktur". Sizin çözümünüz çok küçük bir süreç için biraz ağırdır (“görev nesnelerine adımların altını çizdim” dediğim gibi), ama bunun iplik çıkıntılarını/iplik kesintilerini içeren çok daha iyi bir uygulama olduğunu düşünüyorum. –
@killer_PL: Evet, iş parçacığı kullanmak işi aşırı zorlaştırabilir ... –