java网络IO的三种实现方式

[toc] #BIO---Blocking IO - 每个socket一个线程,读写时线程处于阻塞状态。 优点:实现简单 缺点:无法满足高并发,高接入的需求 - 不使用线程池的BIO模型,除了无法满足高并发需求外,由于需要为每个请求创建一个线程,还可能因为接入大量不活跃连接而耗尽服务...

2017-09-27 11:03:39

阅读数 3088

评论数 0

java中的四种引用

快速理解java的四种引用 1 强引用 快捷键 Markdown及扩展 表格 定义列表 代码块 脚注 目录 数学公式 UML 图 离线写博客 浏览器兼容 1. 快速理解java的四种引用 1.1 强引用 强引用就是通常用到的引用,它是如此之强,以至于JVM宁可抛出OOM异常(...

2017-09-16 16:04:39

阅读数 127

评论数 0

正则表达式(五)------ 匹配模式

1.不区分大小写模式 >>> re.search(r"(?i)the","THe")!=None #指定方式一,括号并不影响捕获分组的编号 True>>> re.compile(r"th...

2013-04-25 13:11:48

阅读数 509

评论数 0

python调用Shell脚本:os.system(cmd)或os.popen(cmd)()【转】

python调用Shell脚本:os.system(cmd)或os.popen(cmd)()【转】 python调用Shell脚本,有两种方法:os.system(cmd)或os.popen(cmd),前者返回值是脚本的退出状态码,后者的返回值是脚本执行过程中的输出内容。实际使用时视需求...

2013-04-24 09:58:23

阅读数 1660

评论数 0

正则表达式(四)------ 断言

断言匹配的不是字符,而是位置。 1.单词边界   \b ---- 表示一边是单词字符,另一边不是单词字符 >>> import re >>> print(re.findall(r"\bword\b","there a...

2013-04-22 21:17:23

阅读数 470

评论数 0

python学习笔记(一)------ core types

1.Python常用build-in类型: Object type  Exampleliterals/creation Numbers  123 Strings  'spam',"guido's", b'a\x01c' Lists  [1, [2, 'three'], ...

2013-04-22 13:18:34

阅读数 487

评论数 0

正则表达式基础(三)------括号

括号的两个作用: 1.表示多选结构的范围 >>> re.search(r"^ab|cd$","abc")!=None #表示以ab开头或以cd结尾的字符串 True >>> re.search(r"^...

2013-04-21 10:51:54

阅读数 410

评论数 0

正则表达式基础(二)——量词

1.常用量词记法 \d{4}   匹配一个4位数字 \d{4,6} 匹配一个4-6位的数字 \d(0-6} 匹配一个0-6位的数字 \d{4,} 匹配一个至少为4位的数字 \d*相当于\d{0,} \d+相当于\d{1,} \d?相当于\d{0,1}   2.贪婪量词和懒惰量词 ...

2013-04-21 10:32:43

阅读数 377

评论数 0

正则表达式基础(一)------字符组

1.排除型字符组       1.排除型字符组指的是该位置不能出现某些字符,但是它所指示的位置不能不出现任何字符       2. "^"只有紧跟在"["之后才被认为是转义字符。   2.数组简记法     \w  相当于[0-9a-zA-Z_]注意还能匹配...

2013-04-21 10:16:56

阅读数 318

评论数 0

一个简单的去重排序方法

>>> a=["a","abc","def","adc","abc","ab"] >>> b=set() >>> for...

2013-04-21 09:47:03

阅读数 526

评论数 0

python正则表达式常用方法

1.re.search返回包含字符串中能匹配正则表达式的第一个子串的一个对象,如果不能匹配则返回None >>> a=re.search(r"[0-9]","12") >>> a >>> a.gr...

2013-04-17 21:44:10

阅读数 391

评论数 0

代码整洁之道------ 对象和数据结构

1.隐藏实现 隐藏实现的目的,个人理解,就是为了两个字------省心。编码者不必担心内部数据结构的暴露,使用者也不必费心去了解内部的实现,两者之间的交互只通过接口进行。好比我按照使用说明对ATM进行操作就可以存钱,不需要在银行有熟人。 隐藏实现并不是简单地把变量声明为私有,然后再给他们加上g...

2013-03-04 20:52:19

阅读数 309

评论数 0

在查找有序二维数组中查找元素

解题思路: 代码实现: public class SortedMatrixElementFinder { public static boolean find(int element, int[][] matrix) { SortedMatrix theMa...

2013-02-26 13:41:07

阅读数 138

评论数 0

代码整洁之道------函数

想要函数清晰,易于理解,要坚持以下原则: 首先,一个函数只做一件事,更准确的说,只做在一个抽象层次上的事.让读者可以自上而下的读,如同在读故事一样. 其次,保持函数短小,没有太多的嵌套层次. 第三,使用描述性的名字,让读者即使望文生义,也能大致推断出函数要做的事.而且,不要在函数里做未在函数...

2013-02-22 12:55:33

阅读数 166

评论数 0

代码整洁之道------命名

1.名副其实,言之有物 (1)避免无意义的命名,如用单个字母作为变量名. (2)避免魔法数字,或者通过下标进行的判断,如if(x[0] == 4),用常量来代替这些数字 2.避免误导 (1)不要使用类似accountList这样的变量名,除非它真的是一个list (2)两个较长且区别很小...

2013-02-21 20:01:08

阅读数 156

评论数 0

effective java笔记------重载equals方法

什么时候重载equals方法? 我们先来看一看equals()方法在Object类中的实现: public boolean equals(Object obj) { return (this == obj); } 在Object类中,equals()方法用于判断两个引用是否指...

2013-02-16 21:02:37

阅读数 210

评论数 0

为什么要保持代码整洁------初读<<代码整洁之道>>

第一次拜读Bob大叔的>,虽然目前只读完了前言,但是已经让人有一种心潮澎湃之感了~~~,忍不住记录如下: 为什么我们要保持代码整洁,这个问题似乎很容易回答:可以降低维护成本,但这又是为什么?从逻辑的角度看,基于两个基本前提: 第一,破窗原理.这是一个已得到广泛认同的心理学原理,大概是说如...

2013-02-07 11:09:25

阅读数 200

评论数 0

Effective java笔记

第一条:考虑用静态工厂方法代替构造函数 优点一: 静态方法可以有具体的名字,使代码更易读,尤其是有多个构造函数时. 优点二: 可以避免创建不必要的重复对象. 例如java中的Boolean类的实现: package java.lang; public final class Bool...

2013-01-05 12:41:49

阅读数 144

评论数 0

Java几款性能分析工具的对比

在给客户进行应用程序维护的过程中,我注意到一些关于高负载条件下的性能问题。理论上,增加对应用程序的负载会使性能有所下降,但是我认为性能下降的比率远远高于负载的增加,同时我也发现,性能可以通过改变应用程序的逻辑来提升。为了更详细地了解这一点,我们需要做一些性能分析,这时,我们自然就要用到一些性能分析...

2012-12-28 14:09:15

阅读数 157

评论数 0

wince6.0编译环境一二三(转摘)

<br /><br />在WinCE5.0中,在"Build OS”菜单中,我们会看到不同的编译选项:<br />"Sysgen","Build and Sysgen"和"Build and Sysge...

2010-12-30 22:06:00

阅读数 215

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭