修改处理线程最大的分配模式

This commit is contained in:
zhangxin10 2015-11-08 14:08:08 +08:00
parent c272abb069
commit ffdc49bd2f
1 changed files with 11 additions and 7 deletions

View File

@ -18,13 +18,17 @@ public class BufferGroup {
public BufferGroup(String groupName) { public BufferGroup(String groupName) {
this.groupName = groupName; this.groupName = groupName;
int k = 0, l;
for (int i = 0; i < MAX_WORKER; i++) { int step = (int) Math.ceil(GROUP_MAX_SIZE * 1.0 / MAX_WORKER);
l = GROUP_MAX_SIZE / MAX_WORKER + k; int start = 0, end = 0;
if (l + GROUP_MAX_SIZE / MAX_WORKER > GROUP_MAX_SIZE) while (true) {
l = GROUP_MAX_SIZE; if (end + step >= GROUP_MAX_SIZE){
new ConsumerWorker(k, l).start(); new ConsumerWorker(start, GROUP_MAX_SIZE).start();
k = l; break;
}
end += step;
new ConsumerWorker(start, end).start();
start = end;
} }
} }