以下是本文的目录大纲: 一.线程的状态 二.上下文切换 三.Thread类中的方法 转载原文链接:http://www.cnblogs.com/dolphin0520/p/3920357.html 一.线程的状态 在正式学习Thread类中的具体方法之前,我们先来了解一下线程有哪些状态,这个将会有助 ...
分类:
编程语言 时间:
2017-10-11 11:13:00
阅读次数:
151
//当前进程 Process current = Process.GetCurrentProcess(); //进程下线程 ProcessThreadCollection allThreads = current.Threads; //当前线程 Console.WriteLine("ID:{0}",... ...
分类:
编程语言 时间:
2017-10-10 20:32:55
阅读次数:
188
1 //当前进程 2 Process current = Process.GetCurrentProcess(); 3 //进程下线程 4 ProcessThreadCollection allThreads = current.Threads; 5 //当前线程 6 Console.WriteLi ...
分类:
编程语言 时间:
2017-10-10 19:19:21
阅读次数:
204
现在许多网站都要求登录后才能进行进一步的操作,当不允许多用户同时登录一个帐号时,就需要一种机制,当再登录一个相同的帐号时,前面登录的人被挤下线,或者禁止后面的人登录。这里实现的是前一种功能。 网上有许多文章都有描述如何实现该功能,看过之后,想着自己也动手记录一下吧,这里是参考的原文地址:http:/ ...
分类:
Web程序 时间:
2017-10-07 22:50:21
阅读次数:
301
前提:先安装好Redis,参考:http://www.cnblogs.com/EasonJim/p/7599941.html 说明:Redis Cluster集群模式可以做到动态增加节点和下线节点,使用起来非常的方便。 下面教程主要是通过官方提供的文档进行搭建测试: https://redis.io ...
分类:
系统相关 时间:
2017-10-05 18:48:12
阅读次数:
294
调了一个下午只有八十分QAQ md弃了不管了 对拍也没拍出来 鬼知道是什么数据把我卡了QAQ 做法其实很简单 根据链剖的构造方法 你每次修改都是一段又一段的线段 那么你只要求一下线段并起来后哪些地方被覆盖了>=t次 不过要基数排序一波不然会T #include<cstdio> #include<cs ...
分类:
其他好文 时间:
2017-10-04 18:29:47
阅读次数:
117
Description 奈特公司是一个巨大的情报公司,它有着庞大的情报网络。情报网络中共有n名情报员。每名情报员口J-能有 若T名(可能没有)下线,除1名大头日外其余n-1名情报员有且仅有1名上线。奈特公司纪律森严,每 名情报员只能与自己的上、下线联系,同时,情报网络中仟意两名情报员一定能够通过情报 ...
分类:
其他好文 时间:
2017-10-02 23:03:48
阅读次数:
149
线程池状态 ThreadPoolExecutor内部有多个状态,理解线程池内部状态对于理解线程池原理至关重要,所以接下来看下线程池的状态: 通过调用runStateOf()方法获取当前线程池状态 通过调用workerCountOf()获取当前线程数 ...
分类:
其他好文 时间:
2017-09-30 17:50:05
阅读次数:
187
①volatile关键字:保证线程之间的变量的可见性 例如: 打印结果如下:线程感受不到isRunning变量的变化(即对主线程的变量改变不可见)一直在while循环中,不会停止 将代码修改如下:将isRunning属性用volatile修饰 打印结果如下: ②volatile关键字并不能保证原子性 ...
分类:
其他好文 时间:
2017-09-29 14:56:20
阅读次数:
143
先上原理图: 上代码之前,要先补充一下线程池构造的核心几个点 本例实现简化了一些,只实现了BlockingQueue存放任务,然后每个worker取任务并执行,下面看代码首先定义一个线程池ThreadExcutor 然后定义一个内部类Worker,这个内部类Worker是用来执行每个任务的,在创建线 ...
分类:
编程语言 时间:
2017-09-28 11:44:30
阅读次数:
455