ソースを参照

ft: 简化一下代码

master
SisMaker 2ヶ月前
コミット
e1ce73e675
1個のファイルの変更3行の追加15行の削除
  1. +3
    -15
      c_src/eNifLock/eNifLock.cc

+ 3
- 15
c_src/eNifLock/eNifLock.cc ファイルの表示

@ -26,11 +26,7 @@ bool lockOne(ErlNifEnv *env, ErlNifPid *ThePid, int KeyIx, uint64_t Val){
if (enif_is_process_alive(env, ThePid)){
return false;
}else{
if (LockSlot[KeyIx].compare_exchange_strong(Expected, Val)){
return true;
}else{
return false;
}
return LockSlot[KeyIx].compare_exchange_strong(Expected, Val);
}
}
}
@ -42,11 +38,7 @@ ERL_NIF_TERM tryLock(ErlNifEnv *env, int, const ERL_NIF_TERM argv[]){
enif_self(env, &ThePid);
uint64_t Val = (uint64_t)(ThePid.pid);
if (lockOne(env, &ThePid, KeyIx, Val)){
return atomTrue;
}else{
return atomFalse;
}
return lockOne(env, &ThePid, KeyIx, Val) ? atomTrue : atomFalse;
}
ERL_NIF_TERM tryLocks(ErlNifEnv *env, int, const ERL_NIF_TERM argv[]){
@ -82,11 +74,7 @@ ERL_NIF_TERM releaseLock(ErlNifEnv *env, int, const ERL_NIF_TERM argv[]){
enif_self(env, &ThePid);
uint64_t Expected = (uint64_t)(ThePid.pid);
if (LockSlot[KeyIx].compare_exchange_strong(Expected, 0)){
return atomTrue;
}else{
return atomFalse;
}
return LockSlot[KeyIx].compare_exchange_strong(Expected, 0) ? atomTrue : atomFalse;
}
ERL_NIF_TERM releaseLocks(ErlNifEnv *env, int, const ERL_NIF_TERM argv[]){

読み込み中…
キャンセル
保存