2014-09-23 7 views
0

나는 네트워크에서 데이터를 가져 오는이 방법을 사용합니다.특정 시간에 데이터 가져 오기

RssParser parser =new RssParser(INPUT); 
    AdapterItems adapter = new AdapterItems(parser.getItems(), MainActivity.this); 
    listView.setAdapter(adapter); 
    adapter.notifyDataSetChanged(); 

예를 들어 최대 3 초 동안 데이터를 가져오고 3 초 내에 데이터를 전달하지 못한 경우 false 값이나 이와 유사한 결과가 반환됩니다.

의견이 있으십니까?

답변

0
  1. 현재 스레드 (스레드 A)에서 데이터를 얻기 위해 스레드를 시작하십시오 (스레드 B).
  2. B가 끝나면 A 필드를 업데이트하고 A에 알립니다 (깨어날 수 있음).
  3. A가 3 초 동안 대기합니다.
  4. 기다린 후 (3 초가 지난 후 또는 깨어 난 경우) 필드를 확인하고 적절한 값을 반환하십시오.

추신 : 메서드에서 부울을 반환하는 대신 오류/예외를 신호로 보내기 위해 예외를 사용하는 것이 좋습니다.

+0

더 자세히 설명해 주시겠습니까? – user3453159

+0

정확히 어떤 부분이 명확하지 않습니까? Java에서 멀티 스레딩의 기본 사항을 이미 알고 있다고 가정합니다. – m0skit0

관련 문제