JSP:全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它[1] 是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件 ...
分类:
编程语言 时间:
2016-08-30 09:28:13
阅读次数:
186
以下面C程序为例: 我们在全局作用域和main函数的局部作用域各定义了一些变量,并且引入一些新的关键字const, static, register来修饰变量,那么这些变量的存储空间是怎么分配的呢?我们编译之后用readelf命令看它的符号表,了解各变量的地址分布。下面的清单中原作者把符号表按地址从 ...
分类:
编程语言 时间:
2016-08-30 09:27:22
阅读次数:
222
对于以下程序: 在编译时加上-g选项,用objdump反汇编时可以把C代码和汇编代码穿插起来显示: 反汇编的结果很长以下是截取要分析的部分: 整个程序的执行过程是main调用foo, foo调用bar, 用gdb跟踪程序的执行,直到bar函数中的int e = c + d;语句执行完毕准备返回时,这 ...
分类:
编程语言 时间:
2016-08-30 09:27:56
阅读次数:
164
用反汇编的方法研究一下C语言的结构体: main函数中几条语句的反汇编结果如下: 从访问结构体成员的指令可以看出,结构体的四个成员在栈上是这样排列的: 虽然栈是从高地址向低地址增长的,但结构体成员也是从低地址向高地址排列的,这一点和数组类似。与数组不同的是结构体成员之间不是一个紧挨一个排列的,中间有 ...
分类:
编程语言 时间:
2016-08-30 09:28:42
阅读次数:
312
前段时间,研究了一下UNet,经过项目实践,大致整理了下遇到的问题。 源码Bitbucket:需要说明的是,这个项目只包含上层的包装,一些低层的网络实现在Unity内部,如NetworkTransport类等并不包含。 UNet概念简介 Spawn:简单来说,把服务器上的GameObject,根据上 ...
分类:
编程语言 时间:
2016-08-30 09:26:01
阅读次数:
228
现在研究一下编译器优化会对生成的指令产生什么影响,在此基础上介绍C语言的volatile限定符。首先看下面的C程序: 我们用recv和send这两个全局变量来模拟设备寄存器。假设某平台采用内存映射I/O,串口发送寄存器和串口接收寄存器位于固定的内存地址,而recv和send这两个全局变量也有固定的内 ...
分类:
编程语言 时间:
2016-08-30 09:22:33
阅读次数:
334
为什么汇编程序的入口是_start,而C程序的入口是main函数呢?以下就来解释这个问题 在《x86汇编程序基础(AT&T语法)》一文中我们汇编和链接的步骤是: 我们用gcc main.c -o main开编译一个c程序,其实际分为三个步骤:编译、汇编、链接 我们先前在《x86汇编程序基础(AT&T ...
分类:
编程语言 时间:
2016-08-30 09:24:55
阅读次数:
158
从中可以看出task1和task2依次最先执行,这时候currentPoolSize=2达到了corePoolSize,task3、task4、task5被送入缓冲队列,达到了workQueue最大值3,task6、task7、task8开启新的线程开始执行,此时currentPoolSize=5达 ...
分类:
编程语言 时间:
2016-08-30 09:23:59
阅读次数:
163
就是让对象与对象(模块与模块)之间的关系没有通过代码来关联,都是通过配置类说明 管理的(Spring根据这些配置 内部通过反射去动态的组装对象) Spring是一个容器,凡是在容器里的对象才会有Spring所提供的这些服务和功能。 内部最核心的就是IOC了, 动态注入,让一个对象的创建不用new了, ...
分类:
编程语言 时间:
2016-08-30 08:17:51
阅读次数:
178
一、装饰器 装饰器可以在函数执行前和执行后执行其他的附加功能,这种在代码运行期间动态增加功能的方式,称之为“装饰器”(Decorator),装饰器的功能非常强大,但是理解起来有些困难,因此我尽量用最简单的例子一步步的说明这个原理。 写代码要遵循开发封闭原则,虽然在这个原则是用的面向对象开发,但是也适 ...
分类:
编程语言 时间:
2016-08-30 08:18:32
阅读次数:
224
做为程序员,一直以来没有自己正式的博客,表示也挺惭愧。做为开发这么多年,积累实在太少。 现在我要做的,是把平时点滴记录下来,坚持下去。给自己下达的硬性指标现在是一周至少一篇技术博客吧。 最近没有研究什么新的技术,这周的这一篇,姑且先记录一下现在正在刷的书《JavaScript高级程序设计》吧。 这本... ...
分类:
编程语言 时间:
2016-08-30 08:20:01
阅读次数:
215
最近要处理markdown文档,想使用mkdocs来做实时修改显示,但其界面的pages设定总让我这边不是很舒服,不能隐藏,所以打算看一下其源代码,看能不能隐藏,先学习一下Python修饰器的语法,原因是源代码里面用到了修饰器。 ...
分类:
编程语言 时间:
2016-08-30 08:17:17
阅读次数:
209
新装的python3.5.2中发现退格键和箭头无法正常使用,打错后发现没办法删除。问了谷哥之后,发现是readline库的问题。如下方法解决:yuminstallreadline-devel.*然后再去重新configure、make、makeinstall问题解决!
分类:
编程语言 时间:
2016-08-30 07:15:27
阅读次数:
142
代码01:intvara=10;
a.name="HelloWorld";
alert(a.name);输出undefined代码02:stringvara="abc";
a.name="HelloWorld";
alert(a.name);输出undefined代码03:Stringvara=newString();
a.name="HelloWorld";
alert(a.name);或vara=newString("abc");
a.name="HelloWorld";
aler..
分类:
编程语言 时间:
2016-08-30 07:11:10
阅读次数:
227
(1)alert(undefined==null);返回的结果是true(2)Javascript中的类型http://www.cnblogs.com/winter-cn/archive/2009/12/07/1618281.htmlJavaScript中的类型JavaScript标准中规定了9种类型:UndefinedNullBooleanStringNumberObjectReferenceListCompletion其中,ReferenceListCo..
分类:
编程语言 时间:
2016-08-30 07:12:12
阅读次数:
235
数据竞争与顺序一致性保证 当程序未正确同步时,就会存在数据竞争。java内存模型规范对数据竞争的定义如下: 在一个线程中写一个变量, 在另一个线程读同一个变量, 而且写和读没有通过同步来排序。 当代码中包含数据竞争时,程序的执行往往产生违反直觉的结果(前一章的示例正是如此)。如果一个多线程程序能正确 ...
分类:
编程语言 时间:
2016-08-30 07:09:48
阅读次数:
209
与前面介绍的锁和volatile相比较,对final域的读和写更像是普通的变量访问。对于final域,编译器和处理器要遵守两个重排序规则: 下面,我们通过一些示例性的代码来分别说明这两个规则: 这里假设一个线程A执行writer ()方法,随后另一个线程B执行reader ()方法。下面我们通过这两 ...
分类:
编程语言 时间:
2016-08-30 07:10:22
阅读次数:
206