最新文章列表

Java并发框架(Concurrency)

原文:http://www.groovyq.net/content/java并发框架回顾 Java并发框架java.util.concurrent是JDK5中引入到标准库中的(采用的是Doug Lea的并发库)。该包下的类可以分为这么块: Executors 1)接口: Executor(例子涉及):用来执行提交的Runnable任务的对象。是一个简单的标准化接口,用来定义包括线程池、异步IO、 ...
darrenzhu 评论(0) 有2654人浏览 2013-12-31 13:04

并发Socket消息发送

线程安全扫盲贴四中,改了异常消息发送的方法,把调用客户端发送消息改成了直接写消息到接收消息队列中,这样虽然接收消息线程池的线程飘红,但总能堵塞堵塞着执行完。为什么客户端并发socket请求会一直卡住了呢?我也不知道。 客户端发送socket的代码如下 /** * 发送消息 * @param msg消息 * @param encoding 消息的编码格式 * @thr ...
silly_sinba 评论(0) 有1567人浏览 2013-01-08 17:33

使用visual vm 分析线程(下)

接着上一篇《线程安全扫盲贴三》,开始第二次测试。 第二次测试 这次并发1000个客户端消息,每次并发20条后休眠1秒。客户端消息发给我的Server后,我的Server再转发给消息指定的服务器。为了产生异常消息,我将指定的目标服务器关闭了,于是每次消息第一次发送完成后,都成为了一个异常消息,每个异常消息将会自动间隔30s;1m;2m发送3次,发送失败后停止发送。 这样虽然是并发了1000个 ...
silly_sinba 评论(0) 有2263人浏览 2013-01-08 16:07

使用visual vm 分析线程(上)

网上很多visual vm的指南手册之类,visual vm最新的下载好后,直接运行即可。 如果无法运行,在右键选择要执行的类,选择Run As-->Open Run Dialog,在新窗口中选择Arguments标签。 vm参数上增加:-XX:+PerfBypassFileSystemCheck     【代码背景介绍——4个线程】 客户端向我的Server中发送消息,我的 ...
silly_sinba 评论(0) 有2813人浏览 2013-01-08 12:02

线程安全扫盲贴二——锁详解

上篇提了一点:  由于内部锁是基于线程而非调用的,当一个线程执行increase方法时,已经拿到了counter对象引用的锁,那么其他线程执行同一个对象的increase或increase2会堵塞等待counter对象锁。   这里涉及到线程的重进入机制,如果线程A进入了increase,那么它已经拿到了counter的对象锁,那么该线程也可以进入increase2,因为这里的increase ...
silly_sinba 评论(0) 有1084人浏览 2013-01-05 11:53

ConcurrentHashMap 解读(一)

一、核心思想  1、锁分离技术: ConcurrentHashMap首先将数据分成一段一段(segment)的存储,然后给每一段数据配一把锁,当一个线程占用锁访问其中一个段数据的时候,其他段的数据也能被其他线程访问。  2、 final 关键字保证HashEntery 对象的不变性,来降低执行读操作的线程在遍历链表期间对加锁的需求: ConcurrentHashMap完全允许多个读操作并发 ...
诸葛不亮 评论(0) 有4863人浏览 2013-01-02 21:45

线程安全扫盲贴一——什么是线程安全

线程的系统都写完了,遇到很多问题,刚开始写到处都在synchronized,跌倒又爬起来,现在回过头来看看JAVA并发实践,开始整理下。   《JAVA并发编程实践》说线程安全就是,在单线程执行时候,实例状态是正确的,在多线程执行的时候,状态仍要正确: a class is thread-safe when it continues to behave correctly when acces ...
silly_sinba 评论(0) 有1680人浏览 2012-12-31 17:41

高级并发对象(Councurrency Tutorial 7)

高级并发对象 到目前为止,上几个章节中,我们重点讲了Java框架最原始的低级API。这些API对于完成基本任务来说已经足够了,但是对于更高级的工作我 ...
623deyingxiong 评论(0) 有1938人浏览 2012-12-25 20:02

聊聊并发(五)原子操作的实现原理

  本文属于作者原创,原文发表于InfoQ:http://www.infoq.com/cn/articles/atomic-operation 更多并发编程文章,http://ifeve.com/?p=291 1    引言 原子(atom)本意是“不能被进一步分割的最小粒子”,而原子操作(atomic operation)意为”不可被中断的一个或一系列操作” 。在多处理器上实现 ...
fantasy 评论(0) 有1952人浏览 2012-12-23 20:06

聊聊并发(四)深入分析ConcurrentHashMap

本文是作者原创,发表于InfoQ:http://www.infoq.com/cn/articles/ConcurrentHashMap 更多并发编程文章访问:http://ifeve.com/?p=269 术语定义 术语
fantasy 评论(0) 有1779人浏览 2012-12-23 20:02

[并发编程]聊聊并发

  聊聊并发系列文章是我在InfoQ发表的并发编程连载文章。 聊聊并发(一)深入分析Volatile的实现原理 聊聊并发(二)Java SE1.6中的Synchronized 聊聊并发(三)Java线程池的分析和使用
fantasy 评论(2) 有2298人浏览 2012-12-23 03:44

shell的并发

#!/bin/bash date;echo "=========begin" for ((i=0;i<5;i++));do  {  sleep 3;echo "done"  }& done wait date;echo "=========end"
ganliang13 评论(0) 有952人浏览 2012-12-21 17:12

memcached缓存失效时的高并发访问问题解决

  memcached一般用于在访问一些性能相对低下的数据接口时(如数据库),为了保证这些数据接口的稳定性,加上memcached以减少访问次数,保证这些数据接口的健壮性。一般memcached的数据都是定时失效的,当数据失效时一般会再次去访问取数据接口,然后将其更新至memcached中。这时就会有一个问题,当某个数据失效时,恰好同时有大量的客户端访问该数据,这时这些客户端都会发现该数据失效,然 ...
davidxiaozhi 评论(0) 有2096人浏览 2012-11-29 13:55

MyISAM并发调优

MyISAM在某些条件下允许并发插入下读取,并且它让你可以“高度”某些操作,以尽可能少地阻止工作。 MyISAM如何删除和插入行?? 删除操作不会重新安排整个表,它们只是把行标记为已经删除,并且在表中留下了一些“洞”。MyISAM在可能的情况下会优先使用这些“洞”,为插入复用空间。如果表是完整的,它就会把新的行拼接在表的最后。 即使MyISAM有表级别的锁,它也能在读取的同时把行拼接到 ...
home198979 评论(0) 有3686人浏览 2012-11-28 14:12

Rails3-使用ajax处理并发

环境:rails 3.2.8 ruby 1.9.3   ajax技术主要通过web浏览器和服务器之间的异步交互来增强交互效果,在页面无刷新的情况下从服务器端获取数据,并显示给用户 那么如果这个交互的过程非常耗时,浏览器就会一直处理这个ajax请求,此时并发的访问就会受阻   背景: 目前有需要查看N台服务器的运行状态,在试图页面显示执行结果,而在连接服务器并查看运行状态的时候非常耗时 ...
michael_roshen 评论(0) 有1764人浏览 2012-11-19 22:32

Activiti 浅谈并发处理

Activiti 版本 5.10 使用activiti 有一段时间了,目前使用activiti 的大部分公司都是用来做类似于OA 等以用户任务为主的流程, 这我没什么好说的,因为我们的流程是以ServiceTask + UserTask 结合来处理定时调度等数据处理任务。 ServiceTask 以主,采用class 和 Spring bean 的方式。废话补多少,切入正题: Activiti ...
asadmin 评论(3) 有18352人浏览 2012-11-09 15:02

Hibernate学习笔记(九)【高级篇】并发、Session管理

数据库事务级别 以及对应 Hibernate事务码 先查 mysql>select @@tx_isolation 设置 mysql>set global transaction isolation level read committed 1:Read Uncommitted 读未提交数据 一个事务执行中可看到另一个事务未插入和未更新的的记录 2:Read Committed ...
txidol 评论(0) 有1034人浏览 2012-11-06 17:30

Java多线程之 concurrent 并发包

   Java Tutorials -> Concurrency: http://docs.oracle.com/javase/tutorial/essential/concurrency/index.html Java Concurrency Utilities: http://docs.oracle.com/javase/7/docs/technotes/guides/concurren ...
Wuaner 评论(0) 有2025人浏览 2012-11-01 07:47

Oracle之悲观锁和乐观锁

为了得到最大的性能,一般数据库都有并发机制,不过带来的问题就是数据访问的冲突。为了解决这个问题,大多数数据库用的方法就是数据的锁定。 数据的锁定分为两种方法,第一种叫做悲观锁,第二种叫做乐观锁。什么叫悲观锁呢,悲观锁顾名思义,就是对数据的冲突采取一种悲观的态度,也就是说假设数据肯定会冲突,所以在数据开始读取的时候就把数据锁定住。而乐观锁就是认为数据一般情况下不会造成冲突,所以在数据进行提交更新 ...
hys1982 评论(0) 有1811人浏览 2012-10-23 17:29

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54785) Web(54513) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics