PpcProcessResult
@Data
@Accessors(chain = true)
public class PpcProcessResult {
public static volatile int globalThreadStatus = DEFAULT_PPC_THREAD_STATUS;
private String host;
private Integer port;
private Boolean isDebug;
private Integer threadStatus; public synchronized static void setBusy(int tid){
globalThreadStatus = globalThreadStatus | (1 << tid);
} public synchronized static void setIdle(int tid){
globalThreadStatus = globalThreadStatus & (~(1 << tid));
} public synchronized static boolean isBusy(int tid){
return (1 << tid) == ((1 << tid) & globalThreadStatus);
} public synchronized static Integer getIdleTid(){
if(globalThreadStatus >= BUSY_PPC_THREAD_STATUS){
return null;
}
int tid = 1;
//如果繁忙,则自增继续,直到取出status等于0
int status = 1 << tid;
while ((status & globalThreadStatus) != 0){
status = status << 1;
tid++;
}
return tid;
}
}
随机推荐
- dockerfile构建docker镜像
1.dockerfile构建nginx镜像,准备nginx.repo文件 [root@localhost dockerfile]# cat nginx.repo [nginx] name = ngin ...
- 从2s优化到0.1s,我用了这5步
前言 分类树查询功能,在各个业务系统中可以说随处可见,特别是在电商系统中. 但就是这样一个简单的分类树查询功能,我们却优化了5次. 到底是怎么回事呢? 背景 我们的网站使用了SpringBoot推荐的 ...
- Windows 使用 Mingw-w64 配置GCC套件
Mingw-w64里的gcc和g++应该是很多人常用的编译工具.但是他的下载资源很乱,不好找(注意:MinGW和MinGW-w64是同宗同源的两款软件!),要么就是版本太老.SourceForge上有 ...
- LeetCode题目练习记录 _数组和链表03 _20211011
LeetCode题目练习记录 _数组和链表03 _20211011 206. 反转链表 难度简单2015收藏分享切换为英文接收动态反馈 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表 ...
- 5.2 Vi和Vim之间到底有什么关系?
我们知道,Vi 编辑器是 Unix 系统最初的编辑器.它使用控制台图形模式来模拟文本编辑窗口,允许查看文件中的行.在文件中移动.插入.编辑和替换文本. 尽管 Vi 可能是世界上复杂的编辑器(讨厌它的人 ...
- PC大屏自适应
通常来说PC端的页面并不像移动端页面那样对屏幕大小和分别率有那么强的依赖.一般的页面都是取屏幕中间的一块宽度(1280px), 两边留白, 高度随着内容的长度滚动.这样无论窗口怎么变化,页面都是可用的 ...
- OSG开发笔记(三十四): OsgUtil::Simplifier:简化几何体,提升显示性能和渲染效率
前言 对于一些较大的图形,会出现显示卡顿和渲染缓慢的问题,这时候就要使用到osgUtil::Simplifier简化器,来对其进行简化. Demo osgUtil o ...
- context之WithTimeout的使用
1. context包的WithTimeout()函数接受一个 Context 和超时时间作为参数,返回其子Context和取消函数cancel2. 新创建协程中传入子Context做参数,且需监控子 ...
- Java网络爬虫的实现
记得在刚找工作时,隔壁的一位同学在面试时豪言壮语曾实现过网络爬虫,当时的景仰之情犹如滔滔江水连绵不绝.后来,在做图片搜索时,需要大量的测试图片,因此萌生了从Amazon中爬取图书封面图片的想法,从网上 ...
- golang定时器之timer+ticker
转载: https://juejin.cn/post/7327157426298011663 Timer 是一个一次性的定时器,用于在未来的某一时刻执行一次操作. 基本使用 创建 Timer 定时器的 ...