java
文章平均质量分 55
雾非花
这个作者很懒,什么都没留下…
展开
-
rabbitmq(七)与spring整合快速入门
添加依赖<dependencies> <dependency> <groupId>org.springframework.amqp</groupId> <artifactId>spring-rabbit</artifactId> <version>1.4.5.RELEASE</version> </dependency></depen原创 2015-05-10 22:31:11 · 406 阅读 · 0 评论 -
java nio(四):DatagramChannel
DatagramChannel是一个收发UDP数据包的channel。UDP是无连接的网络协议。接收数据包DatagramChannel channel = DatagramChannel.open(); channel.socket().bind(new InetSocketAddress(9999)); ByteBuffer buffer = By原创 2015-05-02 22:23:45 · 416 阅读 · 0 评论 -
java nio(三)SocketChannel和ServerSocketChannel
SocketChannelSocketChannel是一个连接到TCP网络套接字的channel,打开SocketChannel的方式如下:SocketChannel socketChannel = SocketChannel.open(); socketChannel.connect(new InetSocketAddress("127.0.0.1", 9999));Se原创 2015-05-02 21:18:41 · 430 阅读 · 0 评论 -
java nio(二)FileChannel
FileChannel是一个连接到文件的channel,可以通过它来读写文件。FileChannel不能设置为非阻塞模式。从FileChannel读数据 @Test public void test0() { FileChannel inChannel = null; try { //获取一个FileChannel实例原创 2015-05-02 17:14:39 · 428 阅读 · 0 评论 -
java nio(一)概述
nio是new IO的简称,是jdk1.4以后引入的api。传统IO是面向流的操作,是阻塞IO;而nio是面向缓冲的,是非阻塞IO。nio主要由以下3个核心部分组成:buffer、channel、selector。channel和bufferchannel看上去有点像流,但与流不同的是,channel是双向的,数据可以从channel读到buffer中,也可以从buffer写到channel中。而流原创 2015-05-02 15:21:28 · 349 阅读 · 0 评论 -
java并发包中的lock
一:java并发包jdk 1.5引入了java.util.concurrent并发包,里面提供了各种强大的并发工具,让并发编程变得更容易。本文简单介绍一下并发包提供的锁(lock)。二:锁的使用使用并发包的锁时,通常代码结构如下: Lock l = ...; l.lock(); try { // 操作共享资源 }原创 2015-02-02 14:03:27 · 480 阅读 · 0 评论 -
线程池
一:几种线程池对象比较1.newSingleThreadExecutor创建一个只有一个线程的线程池 。与普通单线程不同的是,保证池子里有一个线程,当线程意外死亡,会自动产生一个线程,确保始终有一个线程存活。2.newFixedThreadPool创建一个拥有固定线程数的线程池。任意时间点,最多只能有固定数目的活动线程存在,此时如果有新的线程要加入,则放在队列中等待,直到某个线原创 2015-02-02 15:37:13 · 333 阅读 · 0 评论 -
多线程
一:进程与线程1. 进程:执行中的程序(程序是静态的概念,进程是动态的概念)。 2. 线程:程序中单独顺序的流控制。二:多线程1. 多线程:指的是在单个程序中可以同时运行多个不同的线程执行不同的任务。对于单核CPU来说,某一时刻只能有一个线程在执行(微观串行),从宏观角度来看,多个线程在同时执行(宏观并行)。 对于双核或双核以上的CPU来说,可以真正做到微观并行。原创 2015-02-01 22:38:46 · 458 阅读 · 0 评论 -
多线程的同步
一:多线程的同步在多线程环境中,可能会有两个甚至更多的线程试图同时访问一个资源,需要对这种潜在资源冲突进行预防。解决方法就是在线程使用一个资源时为其加锁。访问资源的第一个线程为其加上锁以后,其他线程便不能再使用那个资源,除非被解锁。二:synchronized关键字1.当synchronized关键字修饰一个方法的时候,该方法叫做同步方法。 当synchronized包原创 2015-02-02 09:52:40 · 410 阅读 · 0 评论 -
线程调度
一:线程调度常用方法1. sleep方法 sleep()允许指定以毫秒为单位的一段时间作为参数,它使得线程在指定的时间内进入阻塞状态,不能得到CPU 时间,指定的时间一过,线程重新进入可执行状态。此操作受到系统计时器和调度程序精度和准确性的影响。休眠的线程不丢失任何监视器的所属权,也就是说不会释放锁。2. setPriority方法(设置优先级)原创 2015-02-02 13:38:32 · 408 阅读 · 0 评论 -
java nio(五)Buffer
Buffer用于和channel进行交互,数据是从channel读入buffer,从buffer写入到channel中的。buffer本质上是一块可以写入数据,然后可以从中读取数据的内存。Buffer的读写示例请移步 java nio(二)FileChannelBuffer的主要类型ByteBuffer CharBuffer ShortBuffer IntBuffer LongBuffe原创 2015-05-03 19:09:25 · 430 阅读 · 0 评论