Java把内存分成两种,一种叫做栈内存,一种叫做堆内存 在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配。当在一段代码块中定义一个变量时,java就在栈中为这个变量分配内存空间,当超过变量的作用域后,java会自动释放掉为该变量分配的内存空间,该内存空间可以立刻被另作他用。 ...
分类:
编程语言 时间:
2017-01-10 11:26:17
阅读次数:
189
Application:所有的会话共享一个Application空间,任何一个人改变Application的内容,其他人都会发现被改变了。Application中的内容不会被自动释放 存放位置:服务端所有的访问用户都是访问的同一个变量 (1)用Application存值:Application["k ...
分类:
移动开发 时间:
2017-01-06 12:53:18
阅读次数:
328
假设一个网站,最初开始压力不大,只有几千条或者几万条数据存储,约几百个查询访问 那么一般就是一台设备应对 数据输入和查询 (后继更新代码) 1 目前完成代码 链表和hash函数 整个思路就是写了一个 智能指针版的链表(注意指针间相互引用造成无法自动释放,出现内存泄漏) 然后将测试数据hash 分别放 ...
分类:
其他好文 时间:
2017-01-06 09:27:04
阅读次数:
201
在讲述这些之前我们需要一些预备知识: java中的内存被分成以下部分: 1、栈区:由编译器自动分配释放,具体方法执行结束后,系统自动释放JVM内存资源。 其作用有保存局部变量的值,包括:1.用来保存基本数据类型的值;2.保存类的实例,即堆区对象的引用(指针)。也可以用来保存加载方法时的帧。 2、堆区 ...
分类:
编程语言 时间:
2016-12-28 19:34:43
阅读次数:
209
线程的创建boost_thread,boost_system
多线程的创建
线程的参数传递
线程的创建方式
线程的join
加入join,回收线程
线程中断
线程中断2,
线程组
boost线程的死锁
boost线程递归锁
线程互斥锁,线程同步
unique_lock锁,离开作用域自动释放
unique_lock锁示例2,可以显式的释放锁
..
分类:
编程语言 时间:
2016-12-27 16:26:34
阅读次数:
191
php-fpm优化方法 php-fpm存在两种方式,一种是直接开启指定数量的php-fpm进程,不再增加或者减少;另一种则是开始时开启一定数量的php-fpm进程,当请求量变大时,动态的增加php-fpm进程数到上限,当空闲时自动释放空闲的进程数到一个下限。这两种不同的执行方式,可以根据服务器的实际 ...
分类:
Web程序 时间:
2016-12-27 09:49:38
阅读次数:
156
首先纠正以前的错误:在没有调用join()之前,线程已经运行了。 下面还是把join加上,目前这个程序输出很乱 使用基本的互斥锁,解决资源竞争,看到输出不在凌乱 改进:自动释放mu 继续优化:去掉上一个程序的缺点 ...
分类:
编程语言 时间:
2016-11-27 08:01:44
阅读次数:
162
(一):区别java内存中堆和栈: 1.栈:数据可以共享,存放基本数据类型和对象的引用,其中对象存放在堆中,对象的引用存放在栈中; 当在一段代码块定义一个变量时,就在栈中 为这个变量分配内存空间,当该变量退出该作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。 2 ...
分类:
编程语言 时间:
2016-11-26 17:06:18
阅读次数:
230
这两天做一个socket通信的Demo,用定时器启动client端去连接server端,出现一个状况,连接几次后定时器就停了。 下面就是会造成终止的代码: 经度娘,原因是timer被GC销毁。 方法中的变量如果是值类型,在方法执行完会被自动释放,因为是在栈上分配的空间。 但是方法中声明的引用类型,是 ...