좋아, 나는 이것을 알아 내기 위해 모든 방법을 시도해왔다.얼랭 - 글로벌 변수 .. 예 알아, 나도 알아
이 테이블을 전역으로 가져와야합니다. 내 프로그램 범위 내에서 TableID를 전달하는 것이 훨씬 효율적이지 않다는 것을 깨달았습니다.
TableID = ets:new(tb, [set,public]),
put({tableUniqueID}, TableID),
다음
내가 사용 :
get({tableUniqueID})
와 동일한 기능으로는 잘 테이블 ID를 반환 ... 아직 때를
그래서 나는 그것을보고 다음 새 테이블을 만들려고 다른 함수에서 사용하면 정의되지 않은 값을 반환합니다.
무엇 ?? 외부하지 않는 작품 함수,
ets:lookup(get({tableUniqueID}), msgIn)
같은 일이 : 나는
또한이 모든 전에 사용하면 다음과 같은 테이블 검색 함수를 호출 할 "수"실현 .. 얻을 생각과 글로벌 핵심 만들어 넣어 .. 넣어하기 문제 .. 은 그 때 나는 테이블ets:lookup(tb, msgIn)
의 원자를 호출하여 것이다 표를 조회하는 또 다른 방법을 실현하지만,하지 함수 내에서하지 작동하지 마십시오이 out ..
내 우선 순위는 원자로 테이블을 올려다 보는 것이 왜 불가능한지 파악하는 것입니다. 그러나 그것은 매뉴얼을 포함 해 어디서나 가장 많다고 말합니다.
내가 살 수있는 get/put은 테이블을 저장할 수있는 한 그 원자 식별자로 테이블을 조회합니다.
누구나이 딜레마를 밝힐 수 있습니까?