- 浏览: 180006 次
- 性别:
- 来自: 北京
最新评论
-
九尾狐的yi巴:
Jenercy 写道目测没用。TimeOutThread抛出的 ...
Java timeOut的实现 -
Jenercy:
目测没用。TimeOutThread抛出的TimeoutExc ...
Java timeOut的实现 -
zhaoqiubo:
我理解长连接就是链路要维持着,怎么能一次写入就关闭了呢?你可以 ...
NIO socket 的简单连接池 -
sunlujing:
bruce.yuan 写道没明白你这是要干嘛主要就是记录下 如 ...
awk 传入关联数组 shell变量作用域 -
bruce.yuan:
没明白你这是要干嘛
awk 传入关联数组 shell变量作用域
文章列表
完成的功能:
有一个文件格式如下:
2401:b400:20::/48
2401:b400:21::/48
2001:250:4000::/48
2001:da8:8f00::/48
2001:250:3000::/48
使用空行分割成25部分,比如第一部分代表一个AS的前缀IP地址
另外一个文件:
BJ_Tsinghua
WuHan
GuangZhou
NanJing
一共25行,每一行对应文件1 中的一个部分,现在的需求是要在文件1中加入 这个前缀 达到效果如下:
2401:b400:20::/48 BJ_Tsinghua
2401: ...
awk 传入关联数组 shell变量作用域
- 博客分类:
- linux
我首先需要构建一个 time的关联数组,比如time[2010-01-01]=1;
第一个遇到的问题就是
cat timeItem |while read item ;
do
time[$item]=0
done
使用这样的方法在后面使用time关联数组的时候一直是 空的。
原因: 使用管道的方式会开辟一个新的进程,估计time 是一个新的副本传入过去所以改变的值没有效果,
这是用管道编程的时候必须要注意;
使用如下方式就可以解决:
while read item ;
do
time[$item]=0
done < timeItem.txt
...
找个实习不容易,今天去面试,面试官先问了我JVM的很底层东西,因为看过深入了解JVM这本书答得很顺,结果面试官来劲了,先说 你给我写一个 平衡二叉查找树删除节点的代码,我故意念到 “平衡二叉查找树”,面试官见我认怂说那你写二叉查找吧,我只知道删除节点有三种情况,分为删除节点是否是叶子节点,有一个子节点,有两个子节点,但是当场手写代码还是没有写出来。回来在参考书的帮助下手写了一遍。哎,基础不行。
package graphic;
public class BinarySearchTree {
private TreeNode root = null;
/**
* ...
一道笔试题,抛骰子8次,和为多少最大,对于笔试题可以这样考虑,两个骰子和为 7的概率最大,8次的话最大为28.
下面编程给出说明,result[i][j] 代表抛i次时,和为j 的次数。对于第i+1 次可使用前面的结果来计算,如计算 result[i+1][48] 可以 把result[i][48-1], result[i][48-2],result[i][48-3],result[i][48-4],result[i][48-5],result[i][48-6] 的值加起来,这样的话就可以自底向上的推出任意次抛骰子的和的结果。
算法如下:
public static void r ...
在传统的网络编程中我们依赖于ServerSocket,Socket进行通信,大致的框架就是ServerSocket调用accept方法,等待客户端的连接,如果连接进来的时候则创建一个服务器端socket,客户端和服务器端socket建立好InputStream 和outputStream通道进行通信,在这个网络IO的过程中inputStream的read 和outputStream的write方法都可能发送阻塞。为了减少这种阻塞对其他连接的影响,一般都会在服务器端为每个连接开辟一个新的线程,或者使用线程池技术来避免线程的创建销毁同时又一定程度支持并发量。然而这种情况下,如果发生大量的read ...
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
/**
* 对应编程之美的烙饼翻转
* @author sunlujing
*
*/
public class CookieReverse {
private int cookie_cnt =10;
private int[] cookies={3,2,1,6,5,4,9,8,7,0};
private int [] med_cookies_states= { ...
编程珠玑中第一篇讲的就是使用bitmap来排序大文件里面的数据。下面给出一个简单的BitMap实现。
主要使用Byte数组。主要就是shiyong为操作来设置为1 的元素。
public class BitMap {
private byte[] bitMap = null;
public BitMap(int size){
//初始化时需要计算一共要使用多少个Byte。
if(size%8==0){
bitMap = new byte[size/8];
}else{
bitMap = new by ...
在使用Dijkstra算法计算最段路径的时候,如果只有多条最段路径默认只能输出一条,其实只要修改一下代码就可以得到多条最段路径。
public ArrayList<ArrayList<Node>> shortPathAstar(Node src,Node des){
open.clear();
closed.clear();
open.add(src);
while(open.size() > 0){
float lowest = Float.MAX_VALUE;
int c = -1;
...
HashSet部分: 以下以HashSet为例进行分析。 从Hashset类的主体部分: public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, java.io.Serializable { static final long serialVersionUID = -5024744406713321676L; private transient HashMap<E,Object> map; // Dummy value ...
在java编程中我会大量的使用 foreach 语法来遍历Collection对象 以及数组对象。
本文主要是解释一下foreach的实质以及如何改变 foreach遍历的行为?
point A:
foreach语句之所以能够工作是因为 在JavaSe5 中引入的Iterable接口,该 ...
在的web应用程序中需要使用 runtime 来执行exec 来运行一个流量接收程序,我在window下使用eclipse 集成tomcat调试,没有一点问题,exec能够运行外部的cmd。把程序部署到 linux 的tomcat服务下,exec不能执行cmd,不报错。
经过上万查资料发现,是用户权限的问题,使用eclipse +tomcat开发,程序是以登录者的权限运行,通常就是admin了。当把tomcat注册成服务,并部署web的时候就会出现问题了。因为tomcat运行时默认使用自己的用户,所以造成了exec程序无法执行的情况,解决的思路就是让tomcat不使用自己的用 ...
工作流系统的历史记录(ZZ)
- 博客分类:
- 工作流
博客园上的一个工作流系统的构建,个人觉得写得很好!
http://www.cnblogs.com/webreport/tag/java%E5%B7%A5%E4%BD%9C%E6%B5%81/
在工作流系统中,业务流程按流程引擎定义的模型规则,定义成流程的一个一个节点。当流程实例运行时,流转 ...
restlet 在实现web service 时相对简单,一个jar程序就可以发布服务。在我的毕设中的web service 程序就是使用 restlet 来发布的。 restlet默认的支持的线程最大响应数貌似只有20。发了一天的时间才找到如何设置默认的请求响应数。
在使用 50个线程并发运行时,抛出错误的类在 BaseHelper,源码中有描述:
/**
* Base connector helper. Here is the list of parameters that are supported.
* They should be set in the c ...
先说遇到的问题:
我用highcharts 做了一个统计我百度文库 浏览下载 的统计曲线分析图。在eclipse里面,我设置了整个工程为UTF-8编码。 reader = new BufferedReader(new InputStreamReader(new FileInputStream(wenku));所有的读和写都是以这样默认的方式 来进行操作。在这种情况下 读写文件的编码格式 遵循 工程的编码格式即为 utf-8. 抓取和分析网页的结果,存放在本地文件 result.json里面。这是 result.json 固然是 utf-8格式。
使用 如下语句没有问题。
$.ge ...
用NIO socket读取网络数据,找了好久没找到,NIO下设置读超时的API,只好自己写了一个。
思路是设置守护进程,启动后等待 一定的时间,如果在等待一定的时间后还没被唤醒,则抛出超时异常。
//设置超时守护进程 TimeOutThread t = new TimeOutThread(5000,new TimeoutException("reading timeOut")); t.start(); ...