Skip to content

修复BUG: DataManagerTest中worker的uidsLock未释放,导致testDMMulti卡死#30

Open
qk-antares wants to merge 1 commit intosenshinya:masterfrom
qk-antares:master
Open

修复BUG: DataManagerTest中worker的uidsLock未释放,导致testDMMulti卡死#30
qk-antares wants to merge 1 commit intosenshinya:masterfrom
qk-antares:master

Conversation

@qk-antares
Copy link

DataManagerTest中worker的else分支uidsLock未释放,在真实的new Thread(r).start()多线程测试环境下,testDMMulti会卡死,该版本修复了这个BUG

原代码:
uidsLock.lock();
if(uids0.size() == 0) {
uidsLock.unlock();
continue;
}
int tmp = Math.abs(random.nextInt()) % uids0.size();
long u0 = uids0.get(tmp);
long u1 = uids1.get(tmp);

修复后:
long u0, u1;
uidsLock.lock();
try {
if (uids0.size() == 0) {
continue;
}
int tmp = Math.abs(random.nextInt()) % uids0.size();
u0 = uids0.get(tmp);
u1 = uids1.get(tmp);
} finally {
uidsLock.unlock();
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant