これが私のコードです:
private void synCampaign() {
List<Campaign> campaigns;
try {
campaigns = AdwordsCampaign.getAllCampaign();
for(Campaign c : campaigns)
CampaignDao.save(c);
} catch (ApiException e) {
try {
Thread.sleep(5000);
} catch (InterruptedException e1) {
e1.printStackTrace();
}
synCampaign();
e.printStackTrace();
} catch (RemoteException e) {
try {
Thread.sleep(5000);
} catch (InterruptedException e1) {
e1.printStackTrace();
}
synCampaign();
e.printStackTrace();
}
}
AdwordsCampaign.getAllCampaign()
リモートリソースを取得しようとします。RemoteException
これは、インターネット接続がタイムアウトしたために をスローする場合があります。例外がキャッチされたら、スレッドをしばらくスリープさせてから、リモート リソースを再度取得しようとします。
私のコードに問題はありますか? それとももっと良い方法がありますか?