1.Futrue
public interface Future //Future 表示异步计算的结果ExecutorService threadPool = Executors.newSingleThreadExecutor();
Future future = threadPool.submit(new Callable() {
public String call() throws Ex...
分类:
编程语言 时间:
2014-10-26 15:40:38
阅读次数:
159
Java并发编程实践 目录并发编程—— ConcurrentHashMap并发编程—— 阻塞队列和生产者-消费者模式并发编程—— 闭锁CountDownLatch 与 栅栏CyclicBarrier并发编程—— Callable和Future并发编程—— CompletionService : Ex...
分类:
编程语言 时间:
2014-10-24 18:43:37
阅读次数:
217
FutureTask类是Future 的一个实现,并实现了Runnable,
所以可通过Executor(线程池)来执行,也可传递给Thread对象执行。
如果在主线程中需要执行比较耗时的操作时,但又不想阻塞主线程时,
可以把这些作业交给Future对象在后台完成,当主线程将来需要时,
就可以通过Future对象获得后台作业的计算结果或者执行状态。
Executor框架利用Futur...
分类:
其他好文 时间:
2014-10-23 20:51:21
阅读次数:
192
首先,Future是一个接口,该接口用来返回异步的结果。
package com.itbuluoge.mythread;
import java.util.ArrayList;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concur...
分类:
编程语言 时间:
2014-10-18 14:06:15
阅读次数:
243
1.INSERT调用PL/SQL 去insert的时候,没有使用super(),此时应当自己创建callable statement;调用checkErrors()方法在执行 callable statement 处理异常后protected void insertRow() { try { ...
分类:
数据库 时间:
2014-10-16 12:37:22
阅读次数:
210
问题描述 主要我的疑问在两点:1、如何定义一个Future对象数组,最先我采用的是Future[]f=newFuture(10);来定义了一个有10对象的数组,但是老报错2、Future可以使用Callable,那可不可以就是用Runnable现在我最急需的是解决第一个问题 ...
分类:
其他好文 时间:
2014-10-15 23:16:11
阅读次数:
225
《python基础教程(第二版)》学习笔记基础部分(第1章)IDEWindows: IDLE(gui), Eclipse+PyDev; Python(command line);Linux/Unix: python>>> 1/2=0 注意整除得0>>> from __future__ import ...
分类:
编程语言 时间:
2014-10-15 21:14:31
阅读次数:
234
用过JavaScript或者jQuery的同学都知道,JavaScript特别是jQuery中存在大量的回调函数,例如Ajax、jQuery的动画等。
在异步网络编程中,由于IO操作是异步的,也就是一个IO操作不会阻塞去等待操作结果,程序就会继续向下执行。
在MINA、Netty、Twisted中,很多网络IO操作都是异步的,比如向网络的另一端write写数据、客户端连接服务器的connect操作等。
例如Netty的write方法(以及writeAndFlush方法),执行完write语句后并不表示数据已...
分类:
Web程序 时间:
2014-10-12 19:06:08
阅读次数:
308
很多人把装饰器搞的很复杂,其实本质很简单.
首先,什么是装饰器呢?在代码中发现戴着@xxx帽子的,就是装饰器.
那要怎么自己定义一个装饰器呢?
其实任何一个接收一个参数的callable都可以用来做装饰器,比如函数和类.为方便起见,下面的例子都用函数来说明.
def deco(func):return 1
这里,deco就可以做装饰器.
@deco
def f(args):pass
...
分类:
编程语言 时间:
2014-10-11 20:05:36
阅读次数:
240
这个模块提供了3个有趣的函数,这里介绍下其用法。 首先是partial函数,它可以重新绑定函数的可选参数,生成一个callable的partial对象 >>>?int(‘10‘)?#?实际上等同于int(‘10‘,?base=10)和int(‘10‘,?10)??...
分类:
编程语言 时间:
2014-10-11 17:26:26
阅读次数:
214