链滴
社区愿景和功能特性
优雅的 Markdown 所见即所得编辑
快捷键交互
随时自由编辑分享内容
支持注销账号来去自由
分布式社区网络
开放 API
产品
Symphony 社区系统(Java)
Solo 博客系统(Java)
Vditor 编辑器(TypeScript)
思源笔记(Electron、Go)
Pipe 博客平台(Vue、Go)
发展计划表
发展简史
榜单
GitHub 仓库排行
帖子打赏排行
Solo 博客端排行
积分排行
活跃度排行
贡献排行
本站基于开源项目 Sym
编程代码问答
登录
注册
首页
>
标签
多线程
11
引用 •
26
回帖 •
533
浏览
参与讨论
关注
关注
分享
Future
1
引用 •
5
回帖
线程基础
1
引用
接口
18
引用 •
77
回帖
空心
1
引用 •
1
回帖
线程池
3
引用 •
8
回帖
指令
3
引用 •
20
回帖
源码剖析
2
引用 •
7
回帖
默认
热议
好评
优选
最近回帖
关注者
查看所有标签
问一个线程同步的问题
上代码: import java.util.LinkedList; import java.util.Queue; class BlockingQ { private Object notEmpty = new Object(); private Object notFull = new Object(); priva ..
500
7 年前
大家猜猜这个 Java 程序最后的输出是什么
public class Test { public volatile int inc = 0; public void increase() { inc++; } public static void main(String[] args) { final Test test = new Test(); for(in ..
399
7 年前
多线程并发下载器 -gorc
gorc 是类 wget 多线程下载器,支持直接从资源 url 并发获取资源 项目地址:https://github.com/V-I-C-T-O-R/gorc 使用说明: 1.手动选择模式和自动分配模式,参数:manual,默认为 false/自动 2.指定并发线程数,参数:thread,默认为 5 3.指定下载的 u ..
735
7 年前
2016 年技术总结
并发-多线程,线程池。在保证效率的情况下不要轻易使用多线程。多线程不可控,黑盒运行。Guava 异步回调可以根据实际场景适当的运用。JVM 内存模型和运行机制(类加载机制)需要加强。 Redis 缓存的使用,能够进行缓存的数据结构设计。String,List,Queue,HashMap,Set。 缓存设计,根据不同的应 ..
433
7 年前
Java 分解任务执行 CountDownLatch 用法和 Future 用法比较
如题,需要执行多个子任务然后合并,可以使用 CountDownLatch,然后进行合并,也可以使用 ThreadPoolExecutor.invokeAll(),然后遍历 Future 的 List 然后进行 Future.get()进行合并。两种方法哪种更好,效率如何(个人感觉有效率应该无差,都是 AQS 的实现)。 ..
2.9K
8 年前
大家能看出这段代码的问题么?
public Future fireEventAsynchronously(final Event event) { final ExecutorService executorService = Executors.newSingleThreadExecutor(); final FutureTask future ..
486
7 个月前
有点看不懂线程的join方法实现
源码: public final synchronized void join(long millis) throws InterruptedException { long base = System.currentTimeMillis(); long now = 0; if (millis < 0) { th ..
362
8 年前
Java 多线程详解
Java给多线程编程提供了内置的支持。一个多线程程序包含两个或多个能并发运行的部分。程序的每一部分都称作一个线程,并且每个线程定义了一个独立的执行路径。 多线程是多任务的一种特别的形式。多线程比多任务需要更小的开销。 这里定义和线程相关的另一个术语:进程:一个进程包括由操作系统分配的内存空间,包含一个或多个线程。一个线 ..
450
8 年前
java.util.concurrent 包分析--Executor
一、api中的结构 java.util.concurrent 接口 Executor 所有已知子接口: [链接], [链接] 所有已知实现类: [链接], [链接], [链接] 该接口中,主要有一个方法 void execute([链接] command),主要用来执行Runnable任务。一般情况是通过Executo ..
464
10 年前
线程基础----如何编写java线程池(二)
一、场景: 在了解了线程状态的转换,以及java提供的线程调度的一些方法之后,我尝试写一个线程池。 二、线程池的优缺点 (1) 谈到高并发必然离不开线程池,因为他有如下的优点: 1.1、降低资源的消耗。通过利用已创建的线程,来降低创建和销毁带了的消耗 1.2、当任务到达时候,不需要创建线程就可以立即执行。 1.3、提高 ..
409
11 年前
线程基础-----详细介绍线程状态转换(一)
一、场景: 接触到java,如果要继续深入学习,那么就必须要了解线程,这个过程是比较长的。如果在实际工作中没有接触到,自己摸索的话,始终不能得其道,当然这并不妨碍,我们将线程基础学习一翻。以后有了实际的需求驱动,那么就会事半功倍。 在学习的时候,线程的状态转换,线程调度,同步异步,线程的通信这些基本的知识当然要牢牢掌握 ..
569
7 年前