2012-10-10 5 views
0

질문 : 비동기 적으로 값을 반환하는 함수를 구현하는 데 사용할 수있는 기술은 무엇입니까?비동기 액세서

(ActionScript의 ... 변명 싸게 치장) 원하는 효과의

잘못된 코드 :

public function get item() : InventoryItem { 
    return InventoryItem.find(this.id); 
} 

public class InventoryItem { 
    public static function find(id : int) : InventoryItem { 
     var statement:SQLStatement = statementCreator.create('FIND_BY_ID'); 
     statement.parameters['@id'] = id.toString(); 
     statement.addEventListener(SQLEvent.RESULT, 
      function (event : SQLEvent) : InventoryItem { 
       // find returns from here 
       return (event.target as SQLStatement).getResult().data[0] as InventoryItem; 
      }); 
     statement.execute(); 
    } 
} 

배경 : 나는 현재 플렉스를 사용하고 일정한 문제가집니다 : 필요가 비동기 기능을 가지고 심지어 콜백은 접근 자 함수 또는 다른 함수의 반환 값을 사용하는 다른 함수에 값을 반환합니다.

플렉스에서는 구현하기가 불가능한 것처럼 보입니다. 나는 연속체, 뮤텍스 (mutex), 동시 프로그래밍, 코 루틴을 사용할 수 있는지는 알 수 없지만 ActionScript에서 "yield"와 동일한 것을 찾으려고 노력했다.

답변

0

연속 연속 스타일로 전환하고 setTimeout을 사용할 수 있습니다.

+0

그러나이 메서드를 사용하더라도 콜백 반환 값은 실제로 어디에도 사용되지 않습니다. 이 작업을 수행하는 방법? – user1303374

관련 문제