SORU
24 EKİM 2011, PAZARTESİ


Android - bir AsyncTask için bir zaman Aşımı Ayarı?

Bir web sitesindeki verilerin büyük bir liste yükler ben yürütmek AsyncTask bir Dersim var.

Kullanımı sırasında son kullanıcı çok yavaş ya da düzensiz bir veri bağlantısı olması durumunda, bir süre sonra AsyncTask zaman aşımı yapmak istiyorum. Bu benim ilk yaklaşım gibi

MyDownloader downloader = new MyDownloader();
downloader.execute();
Handler handler = new Handler();
handler.postDelayed(new Runnable()
{
  @Override
  public void run() {
      if ( downloader.getStatus() == AsyncTask.Status.RUNNING )
          downloader.cancel(true);
  }
}, 30000 );

AsyncTask, yeni bir işleyici işe başladıktan sonra, Eğer hala çalışıyorsa 30 saniye sonra AsyncTask iptal edecektir.

Bu iyi bir yaklaşım mı? Yoksa daha iyi bu amaç için uygun bir şey AsyncTask yerleşik?

CEVAP
24 EKİM 2011, PAZARTESİ


Evet, AsyncTask.get() var

myDownloader.get(30000, TimeUnit.MILLISECONDS);

Ana konuyu bu (AKA. arayarak unutmayın İplik UI) yürütme engeller, muhtemelen ayrı bir konu onu aramak lazım.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GoogleTechTalks

    GoogleTechTa

    15 AĞUSTOS 2007
  • lifeisforsharingDT

    lifeisforsha

    18 Mayıs 2011
  • TheDroidDemos

    TheDroidDemo

    15 ŞUBAT 2011