`
zys0523
  • 浏览: 31715 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
昨天看到tf因为threadlocal用完没有清理而导致OOM 实验一: package main; /** * User: zhangyangsheng * Date: 13-1-24 * Time: 下午6:40 */ public class ThreadLocalTest { ThreadLocal<Value> threadLocalPart = new ThreadLocal<Value>(); static class Value{ final int i; Value( ...
最近围观@田麦大牛的代码,看到ThreadLocal还能这么玩,故此记录一下 ThreadLocal概念:http://blog.csdn.net/qjyong/article/details/2158097 可以明显看到ThreadLocal中的值是和线程本身绑定的,那么如果我在A线程中使用了ThreadLocal,set了一个变量,然后在B线程如何取出来呢。 往ThreadLocal中set变量时,可以debug这个类,发现类中除了一串hashCode外什么都没有,那么这个值究竟放在哪里呢? threadLocalHashCode = -387276957  看一下Thr ...
最近为了避免线上日志量过多,我们团队采用了多种方法去减少日志,其中减少/删除日志堆栈是一个还算不错的方法 在这里总结下减少/消除Exception堆栈深度的三个方法 1.生成Exception时不生成堆栈 异常的层次如下 Throwable E ...
终于空了一会稍微看了下Spring的实现 发现Spring的几个annotation,@Autowired,@Required扩展的特别有意思,记录一下 首先要开启spring的Annotation的识别需要在xmlns中添加 xmlns:context="http://www.springframework.org/schema/context"  然后指定下该schema的位置 http://www.springframework.org/schema/context http://www.springframework.org/sc ...

MAC下设置PATH变量

    博客分类:
  • MAC
平时工作还是在windows下,最近突然对nginx感兴趣需要设置环境$PATH颇费了一番功夫 网上的帖子和我电脑实际有些出入所以简单记录一下   在MAC OS X 10.8 下   sudo su /etc/paths.d    可以看到有   sh-3.2# ls -l total 24 -rw-r--r-- 1 root wheel 19 9 18 2009 git -rw-r--r-- 1 root wheel 18 6 14 11:34 go    再添加一个文件 touch nginx vi nginx  用 ...

maven之enforce插件

    博客分类:
  • null
因为之前构建netty的时候maven一直报失败,打开pom看了下发现里面有个enforce的插件 maven的enforce插件会在构建的时候进行强制检查 <plugin> <artifactId>maven-enforcer-plugin</artifactId> <version>1.1</version> <executions> <execution> <id>enforce-t ...
由于网上的教程都有些问题,导致导入失败,所以写了这篇博客给需要的朋友   1.确认以下两个已经安装 1.JDK 1.6+  2.ANT :一款构建工具 2.获取SPRING源代码 目前版本是3.1.1 下载地址: download 也可以从github上获取: download 3.下载完成后请把根文件夹改名为1,避免字符串过长 如图 4.选择project文件夹解压到根目录   5找到project\spring-build\common\quality.xml注释掉68行 <!-- <test-run classpath.id=&quo ...

堆排序

while(true){ 看书; 练习; 总结; } 在学校的日子没啥事做,最近在学习算法导论,记录一下学习的过程。   堆排序是一种排序算法,其时间负责度是 o(n * lg n)   1.什么是堆? 堆可以被视为一颗完全二叉树,即除了最后一层可能不是满的,其余各层应该都是满的。如图: 一般情况下可以用一个数组表示 {16,14,10,8,7,9,3,2,4,1} 可以发现如下关系,假设某个节点为i则 PARENT(i) =    i / 2 向下取整   //父节点坐标 LEFT(i)      =  2i                   ...
HTTP请求如下   请求方法                URI                    协议/版本 POST /order/confirm_order.htm HTTP/1.1 请求头 Host: buy.tmall.com Connection: keep-alive Content-Length: 955 Cache-Control: max-age=0 Origin: http://detail.tmall.com User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.11 (KH ...
31 Design with Contracts  通过合约进行设计 32 Crash Early 早崩溃 33 If in Can't Happen ,Use Assertions to Ensure That It Won't 如果它不可能发生,用断言确保它不会发生 34 Use Exceptions for Exceptional Problems 将异常用于异常的问题 35Finish What You Start 对于资源的分配和解除分配的处理,要有始有终 36Configure,Don't Integrate要配置不要集成 37 Put A ...

多线程学习2

 1.启动一个线程要给它一个名字。这样有助于排错诊断系统监控。 2.ThreadLocal: 线程局部变量。为每个使用该变量的线程提供一个变量值的副本,每个线程都可以独立地改变自己的副本,而不会和其他线程的副本冲突。 注意:使用ThreadLocal,一般都是声明在静态变量中,如果不断的创建ThreadLocal而且没有调用其remove方法,将会导致内存泄露。 3.为了方便并发执行任务,出现了一种专门用来执行任务的实现,也就是Executor。 由此,任务提交者不需要再创建管理线程,使用更方便,也减少了开销。  Executors是一个工厂类,可以通过它创建一系列Execut ...

57-131

13.Eliminate Effects Between Unrelated Thing 消除无关事物之间的影响。 要能设计出独立,单一,高内聚的主键。 14.There Are No Decisions.不存在最终决策 15.Use Tracer Bullets to Find the Target 用曳光弹找到目标。 找到某种东西能让我们快速、直观和可重估地从需求出发,满足最终系统的某个方面要求。 16.prototype for learn.为了学习而制作原型 17 program Close to the Problem Domain.靠近问题领域编程 ...
 1. Care About Yout Craft 关心你的技艺  2. Think About Your Work 思考你的工作  Ps.在所有的弱点中,最大的弱点就是害怕暴露弱点  Ps.注重实效的程序员对他自己的职业生涯负责,并且不害怕承认无知或错误  Ps.如果你确实同意要为某个结果负责,那么就切实的负起责任。当你犯错误,或判断失误时,诚实地承认它,并设法给出各种选择。不找借口,不指责。 3.Provide Options,Don't Make Lame Excuses 提供各种选择,不要找蹩脚的借口 4.Don't Live with Broken Windows 不要 ...
每个线程都有自己的空间去暂存数据 当有一份数据在A,B线程之间共享 那么在A线程中改变了B是不会马上知道的 example   /** * 共享对象 * 多个对象在没有同步的情况下会发生可见性的错误 */ public class SharingObjects1 { private static boolean ready; private static int number; private static class ReaderThread extends Thread{ @Override public void run(){ ...
  SpringMVC最近大有赶超struts2的趋势。 乘着在学校有空对该框架做一定的熟悉和了解,争取毕业设计用这个框架完成 第一部建立一个web项目 maven构建语句,构建出一个空的web项目   mvn archetype:create -DgroupId=packageName -DartifactId=webappName -DarchetypeArtifactId=maven-archetype-webapp -Dwtpversion=1.0   接着在pom中加入spring MVC的依赖   <project xmlns="http://m ...
Global site tag (gtag.js) - Google Analytics