- 浏览: 100291 次
- 性别:
- 来自: 武汉
最新评论
-
hatedance:
这个bytecodeInterpreter应该已经被遗弃了,现 ...
openjdk中的同步代码 -
Mr_lee_2012:
是啊,好文章,谢过。
java栈帧中的对象引用 -
ZangXT:
有些性能要求比较高的系统会考虑这一点的,典型的如JPC,尽量避 ...
java中调用接口及调用继承类效率区别 -
tinywind:
你有没有注意到load_classfile开始定义了个Reso ...
hotsphot中的ResourceArea -
qianli-2010:
java中调用接口及调用继承类效率区别
文章列表
mysql锁释放时机(二)
- 博客分类:
- 数据库
上篇,跟踪了select在事务和非事务下的调用路径,本次跟踪insert下的执行路径。
insert into test1(aa) values('hello world');
断点显示的堆栈
#0 lock_release_off_kernel (trx=0xb512ac68) at lock/lock0lock.c:3853#1 0xb5dca803 in trx_commit_off_kernel (trx=0xb512ac68) at trx/trx0trx.c:853#2 0xb5dcad19 in trx_commit_for_ ...
近几年学得比较迷茫,好像什么都学,一直想好好剖析一个好产品, 好好提升一下自我,好像进展蛮慢,博客也少写了。 人的精力是有限的,还是得在某一行深入。 近来对mysql有些兴趣,专门学习了一下。 我们都知道,数据库事务隔离级别下和普通sql加锁和释放锁的时机是不同的, mysql是如何实现的呢。(以mysql-6.0.11-alpha为例) mysql锁释放的代码在 lock_release_off_kernel。 下面在红帽下跟踪: 首先设置断点: break lock_release_off_kernel ...
由于在c++中需要调用其他语言提供的webservice,而微软提供的的确不怎么样,下载了gsoap学习一下。
函数名
GetCigInfo
功能
返回最新的卷烟品牌列表
原形
这几个用法是很多公司都考的问题,下面再复习一下
package test;
public class MyThread extends Thread { public static Object lock = new Object() ; //全局的锁,在这用来说明问题 public static int i = 0 ; public void run(){ synchronized(lock){ //这里同步,如果没有释放锁,其他线程是不会进去执行println语句的 i++ ;
int prev = i ; //用于看是那个线程,局部变量保存在线程栈中 Sys ...
近来复习了一下spring代码,感觉好的代码还是需要经常看看,从中还是能学到很多东西,虽然我并不看好开源的市场,总觉得开源的东西过于理想,但正因为开源,使我辈等能从中学到一流程序员的设计思路,还是非常感激。
由于项目的需要,不用java也有一年多的时间,个人还是经常看看java项目的源码,从中吸取其中的思路,在项目中也剽窃了一些。个人觉得思路是相通的,不必在乎编程语言。
在spring当中,个人当年曾经剽窃了链式处理的思路,用于一个订单审核的流程当中,所以拿出来分享。
在JdkDynamicAopProxy当中
invoke方法里面
。。。。
List ...
在java里面使用动态代理,一般有以下流程
定义接口
public interface ISample{
public void test();
}
定义实现类
public class SampleImple implements ISample{
public void test(){
.... ...
- 2009-11-19 16:21
- 浏览 898
- 评论(0)
下面摘录《C++沉思录》里面一段:
我们很容易就会注意到:很多最成功的、最有名的软件最初是由少数人开发出来的。这些软件后来可能逐渐成长,然而,令人吃惊的是许多真正的赢家都是从小系统做起的。UNIX操作系统 ...
- 2009-08-04 12:27
- 浏览 650
- 评论(0)
(接上章)
五、子窗口的管理1.概述给MDI客户区窗口发控制消息即可如:
case WM_COMMAND:
switch (LOWORD (wParam))
{
case IDM_WINDOW_TILE:
SendMessage (hwndClient, WM_MDITILE, 0, 0) ;
return 0 ;
...
- 2009-06-20 14:52
- 浏览 975
- 评论(0)
下面转一篇windows的文章,sdk很早时候看过一下,当时如读天书,现在回看,当做补课了!
[转载]Windows SDK笔记
应程序需求需要重写窗体内子控件某一特定消息,可怜我苦苦找了二天也没找到资料,到CDSN提问也没有得到满意答案。
终归是上天不负有心人啊,终于被我发现了博主的一篇文章,总算是满意的解决问题了;在此感谢作者!!
原文:http://www.cppblog.com/Lee7/archive/2008/11/07/66226.html
Windows SDK笔记(一):Windows程序基本结构
一、概述Windows程序具有相对固定的结构, ...
- 2009-06-20 14:47
- 浏览 1164
- 评论(0)
上图为db2采用集中连接器时的情况
当一个连接连到db2数据库时候,db2监听器(db2tcpcm、db2icpcm)为客户端连接创建一个代理,如果代理的总数不超过max_connections,超过max_connections会返回SQL1226N错误。
当应用程序发送一个sql语句,执行下面的步骤
1、分配通讯代理,此时检查maxappls、maxagents、max_coordagents、maxcagents,在max_coordagents、maxcagents超过设定值时,会进行等待。
2 ...
- 2009-02-17 16:53
- 浏览 1633
- 评论(0)
java SE6采用偏向锁以提高性能。
个人理解,偏向锁能提高性能,其理论基础是建立在绝大部分时间内,需要同步的代码其实只是一个线程在运行,正因为是单个线程在运行,所以尽量采用轻量的代码以提高性能,原子操作那是肯定需要的,但不需要采用切换上下文这类的重型操作。如果是很多线程同时运行到同步代码地方,同步代码稍长的话,采用偏向锁反而影响性能。
如果是我设计锁,首先会考虑在内存内放置锁的标志,通过原子操作(CAS--比较、设置,这两个是一个原子操作),如果没有线程获取锁,先设置锁的标志,如果别的线程已经获取锁了,先自旋(自旋是因为现在大部分是多CPU,速度很快,很多同步代码很短,执行很快 ...
都说调用接口要比调用继承类要慢,但慢在何处?
先看byteCodeInterpreter.cpp里面对这invokevirtual和invokeInterface的区别。
CASE(_invokeinterface): { //调用接口 u2 index = Bytes::get_native_u2(pc+1);
ConstantPoolCacheEn ...
近来由于项目需要,采用c++编程,学习了一下stl,对stl::allocator粗略研究了一下,allocator其实就是一个工厂模式,对它的几个方法粗略分析一下
pointer allocate(size_type n, const_pointer = 0) { void* p = std::malloc(n * sizeof(T)); //只分配对象占用的内存,并不初始化,不调用构造函数 if (!p) throw std::bad_alloc(); return static_cast<pointer>(p) ...
- 2009-01-06 09:54
- 浏览 1445
- 评论(0)
在书的第6章问题检侧的情景中,列出db2问题检测的先后次序
1、Connection constraints
2、Sorting constraints
3、Locking constraints
4、Buffer pool problems
5、Cache size problems
6、Miscellaneous problems
此1-5有专门的指标来 ...