`
xieyj
  • 浏览: 100291 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论
文章列表
       上篇,跟踪了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(){              .... ...
下面摘录《C++沉思录》里面一段:      我们很容易就会注意到:很多最成功的、最有名的软件最初是由少数人开发出来的。这些软件后来可能逐渐成长,然而,令人吃惊的是许多真正的赢家都是从小系统做起的。UNIX操作系统 ...
(接上章) 五、子窗口的管理1.概述给MDI客户区窗口发控制消息即可如: case WM_COMMAND: switch (LOWORD (wParam)) {      case IDM_WINDOW_TILE:          SendMessage (hwndClient, WM_MDITILE, 0, 0) ;          return 0 ;                    ...
下面转一篇windows的文章,sdk很早时候看过一下,当时如读天书,现在回看,当做补课了!   [转载]Windows SDK笔记 应程序需求需要重写窗体内子控件某一特定消息,可怜我苦苦找了二天也没找到资料,到CDSN提问也没有得到满意答案。 终归是上天不负有心人啊,终于被我发现了博主的一篇文章,总算是满意的解决问题了;在此感谢作者!! 原文:http://www.cppblog.com/Lee7/archive/2008/11/07/66226.html     Windows SDK笔记(一):Windows程序基本结构 一、概述Windows程序具有相对固定的结构, ...

db2内存分配

    从IBM资料中摘录db2内存分配和释放的图例   db2私有排序情况下,内存分配   

db2参数调整

          上图为db2采用集中连接器时的情况           当一个连接连到db2数据库时候,db2监听器(db2tcpcm、db2icpcm)为客户端连接创建一个代理,如果代理的总数不超过max_connections,超过max_connections会返回SQL1226N错误。          当应用程序发送一个sql语句,执行下面的步骤          1、分配通讯代理,此时检查maxappls、maxagents、max_coordagents、maxcagents,在max_coordagents、maxcagents超过设定值时,会进行等待。          2 ...
  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) ...
   在书的第6章问题检侧的情景中,列出db2问题检测的先后次序    1、Connection constraints    2、Sorting constraints    3、Locking constraints    4、Buffer pool problems    5、Cache size problems    6、Miscellaneous problems    此1-5有专门的指标来 ...
Global site tag (gtag.js) - Google Analytics