다중 사용자 액세스여러 사용자가 비동기적으로 액세스할 수 있도록 네트워크 드라이브에 있는 솔루션을 개발 중입니다. 특히, 사용자가 행을 추가할 여러 "데이터베이스" 테이블이 있습니다. 이 테이블에는 제출된 전체 데이터 테이블에 대한 링크가 포함됩니다.
이와 같은 상황에서 파일 액세스 권한을 관리하는 기본 제공 방법이 있습니까? 사용자가 "데이터베이스" 테이블을 열고 닫는 것을 잊어버려 다른 모든 사람이 도구에서 잠기는 상황을 피하고 싶습니다. 뮤텍스에 대한 고유한 변형을 코딩할 수 있지만 기본 제공되는 쉬운 솔루션이 있는 경우 바퀴를 재발명하고 싶지 않습니다. 이상적인 솔루션은 데이터 테이블을 잠그지 않고 데이터 행을 데이터 테이블로 보내는 일종의 JSL 스크립트입니다.
Re: 다중 사용자 액세스분명히 하자면 "데이터베이스" 테이블은 JMP 테이블을 의미합니까?
행 잠금을 수행할 수 있는 기능이 있는지 알지 못합니다. JMP는 본질적으로 단일 사용자이므로 해당 기능이 없다고 가정합니다.이것이 제가하는 것입니다:
openSharedTable= Function({filePath},{default local},
isLocked = 1;
nAttempts = 200;
delay = 0.1;
attempts = 0;
While(isLocked & attempts < nAttempts,
attempts++;
dt = open(filePath,Invisible);
value = dt << Get Table Variable("Locked File");
If (value=="",
isLocked = 0
,
Close(dt,NoSave);
Wait(delay);
);
);
return(dt);
);