wamp尝鲜php7


起步

php7终于正式发布了,迫不及待想去试下,先拿公司的电脑开刀,环境是wamp,还是32位的,从官网php7.0.0下载windows版本 VC14 x86 Thread Safe,升级wamp的php版本如下:

第一步

wamp的php放在wamp/bin/php,我们在该目录新建php7.0.0文件夹

微信截图_20151207091933.png

把下载的压缩包解压到刚建的php7.0.0文件夹中。 微信截图_20151207092026.png


深入JVM内核(四)


今天让我们对GC及其算法进行研究。

首先,什么是GC,我们在前面说过,就算垃圾收集器,Java中,GC的对象是堆空间和永久区。那么它是靠什么方法来搜集垃圾的呢?有以下四种:

  1. 引用计数法
  2. 标记清除
  3. 标记压缩
  4. 复制算法

    让我们逐个介绍。


深入JVM内核(三)


今天我们来学习如何获取JVM的信息并对信息进行分析。

首先,要打印JVM的信息,假如你用的是eclipse,选择Windows-Preferences-Java-installed JREs,对jdk进行编辑,在Default VM arguments中加入预定参数并保存,就可以在运行java程序后打印出JVM日志了。如,加上-XX:+PrintGCDetails -Xloggc:C:\gc.log,GC日志保存到C盘根目录。 还有一种方法是修改针对某个可运行类,右键,选择Run As-Run Configurations。选择 Arguments,并添加VM参数,如下图 1.png

运行一个程序,控制台便会输出JVM信息 2.png

下面我们对结果进行分析 在那之前我们先了解几个基本的参数设置:


git 2.0的push


起步

好久没用linux了,命令都不熟悉了.linux下安装的git版本比较新,2.x版本,在push时候收到了下面的报错:

$ git push
warning: push.default 尚未设置,它的默认值在 Git 2.0 从 'matching'
变更为 'simple'。若要不再显示本信息并保持传统习惯,进行如下设置:

  git config --global push.default matching

若要不再显示本信息并从现在开始采用新的使用习惯,设置:

  git config --global push.default simple

当 push.default 设置为 'matching' 后,git 将推送和远程同名的所有
本地分支。

从 Git 2.0 开始,Git 缺省采用更为保守的 'simple' 模式,只推送当前
分支到远程关联的同名分支,即 'git push' 推送当前分支。

参见 'git help config' 并查找 'push.default' 以获取更多信息。
('simple' 模式由 Git 1.7.11 版本引入。如果您有时要使用老版本的 Git,
为保持兼容,请用 'current' 代替 'simple')

Matching

matching 参数是 Git 1.x 的默认行为,其意是如果你执行 git push 但没有指定分支,它将 push 所有你本地的分支到远程仓库中对应匹配的分支。

Simple

而 Git 2.x 默认的是 simple,意味着执行 git push 没有指定分支时,只有当前分支会被 push 到你使用 git pull 获取的代码。

修改默认设置

从上述消息提示中的解释,我们可以修改全局配置,使之不会每次 push 的时候都进行提示。对于 matching 输入如下命令即可:

$ git config --global push.default matching

而对于 simple ,请输入:

$ git config --global push.default simple

深入JVM内核(二)


在这里将继续对JVM进行探究,首先来看看

JVM启动流程

1.png 首先装载JVM所需的配置,通过环境变量寻找JDK中的java.exe实现查找,同时可以找到jvm.cfg(相当于配置文件)。接着根据配置找到JVM.dll(在jre的bin/server目录下)并调用系统API装载JVM.dll。最后就可以获得本地化接口并从main开始执行程序。