Fork me on GitHub

01 2014 档案

摘要:## 理解内存明天就要回家过年了,回家之前翻译了一篇比较基础的文章,英文太烂,各位看官见笑了。[原文地址](http://www.ualberta.ca/CNS/RESEARCH/LinuxClusters/mem.html)---这篇文章讨论基于的环境是AICT Linux集群,运行64位的GNU / Linux的AMD Opteron处理器。###内容* 简介* 程序和进程* 存储类别和作用域* 程序大小* 内存映射* 调用堆栈* 页表* 库* 内存限制* 内存分配* 实现细节* 参考文献-----###简介在Linux下,所有的程序都在虚拟内存环境中运行。如果有某个C程序员将指针的值打印 阅读全文
posted @ 2014-01-29 17:22 zhanjindong 阅读(1520) 评论(0) 推荐(0) 编辑
摘要:最近项目中涉及到旧老项目迁移,需要在nginx上做些配置,所以简单学习了下,好记性不如烂笔头,先记下来。rewrite首先查看下nginx是否支持rewrite:./nginx -V不支持说明安装nginx时候缺少pcre,需要重新安装nginx:#安装pcrewget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.34.tar.gztar -zxvf pcre-8.34.tar.gzcd pcre-8.34./configuremakemake install#安装nginxcd nginx-1.0.12./conf 阅读全文
posted @ 2014-01-23 20:44 zhanjindong 阅读(65390) 评论(0) 推荐(1) 编辑
摘要:什么是线程安全当多个线程访问某个类时,不管运行环境采用何种调度方式或者这些线程如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类都能表现出正确的行为,那么就称这个类是线程安全的。竞态条件当某个计算的正确性取决于多个线程的交替执行时序时,那么就会发生竞态条件。换句话说就是正确的结果取决于运气。数据竞争数据竞争是指,如果在访问非final类型的域时没有采用同步来进行协同,那么就会出现竞争。重入由于内置锁是可以重入的,因此如果某个线程试图获得一个已由它自己持有的锁,那么这个请求就会成功。“重入”意味着获取锁的操作的粒度是“线程”,不是“调用”。(这与pthread互斥体的默认加锁行为是 阅读全文
posted @ 2014-01-17 19:21 zhanjindong 阅读(571) 评论(0) 推荐(0) 编辑
摘要:如何正确停止一个线程1)共享变量的使用中断线程最好的,最受推荐的方式是,使用共享变量(sharedvariable)发出信号,告诉线程必须停止正在运行的任务。线程必须周期性的核查这一变量(尤其在冗余操作期间),然后有秩序地中止任务。当线程等待某些事件发生而被阻塞,又会发生什么?果线程被阻塞,它便不能核查共享变量,也就不能停止。这在许多情况下会发生,例如调用Object.wait()、ServerSocket.accept()和DatagramSocket.receive()时。2)Thread.interrupt()的理解Thread.interrupt()方法不会中断一个正在运行的线程。这一 阅读全文
posted @ 2014-01-17 19:21 zhanjindong 阅读(1056) 评论(0) 推荐(0) 编辑

TOP
点击右上角即可分享
微信分享提示