Archive for the ‘ 并发译文 ’ Category

并发编程模型

原文链接 作者: Jakob Jenkov 译者: 林威建 [weakielin@gmail.com]

并发系统可以采用多种并发编程模型来实现。并发模型指定了系统中的线程如何通过协作来完成分配给它们的作业。不同的并发模型采用不同的方式拆分作业,同时线程间的协作和交互方式也不相同。这篇并发模型教程将会较深入地介绍目前(2015年,本文撰写时间)比较流行的几种并发模型。
Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 并发编程模型

Java ThreadLocal的使用

原文链接  作者: Jakob Jenkov 译者: 林威建[weakielin@gmail.com]

Java中的ThreadLocal类允许我们创建只能被同一个线程读写的变量。因此,如果一段代码含有一个ThreadLocal变量的引用,即使两个线程同时执行这段代码,它们也无法访问到对方的ThreadLocal变量。
Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Java ThreadLocal的使用

Java代码到字节码——第一部分

原文地址 作者:James Bloom 译者:张坤

理解在Java虚拟机中Java代码如何别被编译成字节码并执行是非常重要的,因为这可以帮助你理解你的程序在运行时发生了什么。这种理解不仅能确保你对语言特性有逻辑上的认识而且做具体的讨论时可以理解在语言特性上的妥协和副作用。 Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Java代码到字节码——第一部分

非阻塞算法

原文地址  作者:Jakob Jenkov   译者:张坤

在并发上下文中,非阻塞算法是一种允许线程在阻塞其他线程的情况下访问共享状态的算法。在绝大多数项目中,在算法中如果一个线程的挂起没有导致其它的线程挂起,我们就说这个算法是非阻塞的。

为了更好的理解阻塞算法和非阻塞算法之间的区别,我会先讲解阻塞算法然后再讲解非阻塞算法。

Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 非阻塞算法

Java并发编程之CAS

原文地址:作者: Jakob Jenkov   译者:张坤

CAS(Compare and swap)比较和替换是设计并发算法时用到的一种技术。简单来说,比较和替换是使用一个期望值和一个变量的当前值进行比较,如果当前变量的值与我们期望的值相等,就使用一个新值替换当前变量的值。这听起来可能有一点复杂但是实际上你理解之后发现很简单,接下来,让我们跟深入的了解一下这项技术。

Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Java并发编程之CAS

线程基础之遗漏和扩展部分

原文地址  译文地址   译者:姚志彬  校对:丁一,方腾飞

       这里我们只是关注了一些多线程之间共享变量的简单使用问题。这些是任何一个写多线程程序的人,都应该熟悉的最基础的问题。我们忽略了一些其他多线程实现提供的工具。它们虽然很少被用到,但是对于你的程序仍然很有必要。

Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 线程基础之遗漏和扩展部分

Netty源码注释翻译-Channel类

定义为一个通往网络socket或者一个由I/O读写能力的组件。

通道提供:
1,通道的当前状态,打开?已连接?
2,跟通道关联的配置信息ChannelConfig,包括buffer大小等。
3,通道支持的I/O操作,如读、写、连接、绑定等。
4,跟通道关联的ChannelPipeline,用来处理通道的I/O事件和请求。

Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Netty源码注释翻译-Channel类

一个高可扩展的基于非阻塞IO的服务器架构

原文链接   译者:mailto:ahahage@163.com

  • 目录
  • 线程体系结构
  • 反应堆模式
  • 组件架构
  • 接收器
  • 分配器
  • 分配器级别事件处理器
  • 应用程序级别事件处理器
  • 总结
  • 参考资料

Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 一个高可扩展的基于非阻塞IO的服务器架构

JAVA语言规范:线程和锁

原文链接  译者:山鸡 校对:方腾飞

(本文是Oracle 官方《Java语言规范》第十七章译文,有兴趣翻译Java语言规范的同学可以在联系我们。)

JAVA语言规范:线程和锁

概述:

前面章节的大多数讨论,都是关于通过单线程一次执行单个语句或者表达式。而JAVA虚拟机可以支持多线程同时执行。这些线程可以独立执行代码操作,而操作后所产生的值会保留在共享内存当中。单处理器和多处理器都能支持多线程,它们都是通过分配CPU时间片来执行代码。

Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: JAVA语言规范:线程和锁

Java IO: System.in, System.out, System.err

原文链接 作者: Jakob Jenkov 译者: 李璟(jlee381344197@gmail.com)

System.in, System.out, System.err这3个流同样是常见的数据来源和数据流目的地。使用最多的可能是在控制台程序里利用System.out将输出打印到控制台上。

JVM启动的时候通过Java运行时初始化这3个流,所以你不需要初始化它们(尽管你可以在运行时替换掉它们)。

Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Java IO: System.in, System.out, System.err

Akka笔记之日志及测试

英文原文链接译文链接,原文作者:Arun Manivannan ,译者:有孚

在前两篇笔记中(第一篇第二篇),我们简单地介绍了一下Actor以及它的消息传递是如何工作的。在本篇中,我们将看下如何解决TeacherActor的日志打印及测试的问题。

Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Akka笔记之日志及测试

Akka笔记之消息传递

英文原文链接译文链接,原文作者:Arun Manivannan ,译者:有孚

在Akka笔记第一篇的介绍中,我们大致介绍了下Akka工具箱中的Actor。在第二篇当中,我们来看一下Actor消息传递的功能。这里还是延用之前使用的那个学生-老师的例子。

在Actor消息的第一部分中,我们会创建一个老师的Actor,但学生Actor则先不创建,而是使用一个叫做StudentSimulatorApp的主程序。

Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Akka笔记之消息传递

Java IO: 管道

原文链接 作者: Jakob Jenkov  译者: 李璟(jlee381344197@gmail.com)

Java IO中的管道为运行在同一个JVM中的两个线程提供了通信的能力。所以管道也可以作为数据源以及目标媒介。

你不能利用管道与不同的JVM中的线程通信(不同的进程)。在概念上,Java的管道不同于Unix/Linux系统中的管道。在Unix/Linux中,运行在不同地址空间的两个进程可以通过管道通信。在Java中,通信的双方应该是运行在同一进程中的不同线程。

Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Java IO: 管道

Java IO: 文件

原文链接  作者: Jakob Jenkov  译者: 李璟(jlee381344197@gmail.com)

在Java应用程序中,文件是一种常用的数据源或者存储数据的媒介。所以这一小节将会对Java中文件的使用做一个简短的概述。这篇文章不会对每一个技术细节都做出解释,而是会针对文件存取的方法提供给你一些必要的知识点。在之后的文章中,将会更加详细地描述这些方法或者类,包括方法示例等等。

Read more

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Java IO: 文件

并发网每月TOP10文章

ICON5并发网从七月份开始,每月推送网站的TOP10文章,你值得阅读。感谢小编卢爱然的编辑,感谢UED冯念制作的图标

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 并发网每月TOP10文章

return top