显示下一条  |  关闭

Jerry's

notebook

 
 
 
 
 
 

福建省 厦门市 摩羯座

 发消息  写留言

 
福州大学/厦门大学 计算机系 QQ:41620935 E-mail:41620935@163.COM 有事联系我哦``
 
博客等级加载中...
今日访问加载中...
总访问量加载中...
最后登录加载中...
 
 
 
 
 
 
 
心情随笔列表加载中...
 
 
 
 
 

日历

 
 
模块内容加载中...
 
 
 
 
 

天气

 
 
模块内容加载中...
 
 
 
 
 
 
 
 
模块内容加载中...
 
 
 
 
 
 
 

Java RMI、WebService、Java EE EJB的区别

2012-1-2 11:58:25 阅读7 评论0 22012/01 Jan2

RMI的客户端和服务端都必须是java,webservice没有这个限制

webservice是在http协议上传递xml文本文件,与语言和平台无关

RMI是在tcp协议上传递可序列化的java对象,只能用在java虚拟机上,绑定语言

RMI是EJB远程调用的基础,仅用RMI技术就可以实现远程调用,使用EJB是为了实现组件,事物,资源池,集群等功能。

WebService是通过XML来传输数据,可用http等协议因此可在异构系统间传递,并且可以穿过防火墙,可在公网上远程调用

作者  | 2012-1-2 11:58:25 | 阅读(7) |评论(0) | 阅读全文>>

[转] cursor与refcursor及sys_refcursor的区别

2011-12-25 14:33:16 阅读4 评论0 252011/12 Dec25

今天简单的总结一下PL/SQL中cursor(光标/游标)的用法。

作者  | 2011-12-25 14:33:16 | 阅读(4) |评论(0) | 阅读全文>>

[转]C++ 类的静态成员详细讲解

2011-9-30 15:36:24 阅读24 评论0 302011/09 Sept30

C++中,静态成员是属于整个类的而不是某个对象,静态成员变量只存储一份供所有对象共用。所以在所有对象中都可以共享它。使用静态成员变量实现多个对象之间的数据共享不会破坏隐藏的原则,保证了安全性还可以节省内存。

静态成员的定义或声明要加个关键

作者  | 2011-9-30 15:36:24 | 阅读(24) |评论(0) | 阅读全文>>

[转]自旋锁

2011-9-11 16:33:18 阅读29 评论0 112011/09 Sept11

一、为什么用自旋锁
    操作系统锁机制的基本原理,就是在某个锁操作过程中不能与其他锁操作交织执行,以免多个执行路径对内核中某些重要的数据及数据结构进行同时操作而造成混 乱。在不同的系统环境中,根据系统特点和操作需要,锁机制可以用多种方式来实现。以Linux为例,其系统内核的锁机制一般通过3 种基本方式来实现,即原语、关中断和总线锁。在单CPU系统中,CPU 的读—修改—写原语可以保证是原子的,即执行过程过中不会被中断,所以CPU 通过关中断的方式,从芯片级保证该操作所存取的数据不能被多个内核控制路径同时访问,避免交叉执行。然而,在对称多处理器 (SMP) 环境中,单CPU 涉及读—修改—写原语不再是原子的,因为,在某个CPU 执行读—修改—写指令时有多次总线操作,其他CPU

作者  | 2011-9-11 16:33:18 | 阅读(29) |评论(0) | 阅读全文>>

[转]宏与内联函数

2011-9-4 23:20:59 阅读27 评论0 42011/09 Sept4

8.5.1 用内联取代宏代码 
C++ 语言支持函数内联,其目的是为了提高函数的执行效率(速度)。 
在C程序中,可以用宏代码提高执行效率。宏代码本身不是函数,但使用起来象函数。预处理器用复制宏代码的方式代替函数调用,省去了参数压栈、生成汇编语言的CALL调用、返回参数、执行return等过程,从而提高了速度。使用宏代码最大的缺点是容易出错,预处理器在复制宏代码时常常产生意想不到的边际效应。例如 
#define MAX(a, b)       (a) > (b) ? (a) : (b) 

作者  | 2011-9-4 23:20:59 | 阅读(27) |评论(0) | 阅读全文>>

[转] Hacker' delight (高效程序的奥秘) 公式摘要

2011-8-30 20:41:23 阅读37 评论0 302011/08 Aug30

Hacker's delight

第二章 基础

作者  | 2011-8-30 20:41:23 | 阅读(37) |评论(0) | 阅读全文>>

[转]__stdcall __cdecl __fastcall

2011-8-30 13:43:28 阅读40 评论0 302011/08 Aug30


thiscall:
thiscall仅仅应用于"C++"成员函数。 是为了解决类成员调用中this指针传递而规定的。_thiscall要求把this指针放在特定寄存器中,该寄存器由编译器决定。VC使用ecx,Borland的C++编译器使用eax。返回方式和_stdcall相当。thiscall不是关键词,因此不能被程序员指定。

_fastcall:
_fastcall是编译器指定的快速调用方式。由于大多数的函数参数个数很少,使用堆栈传递比较费时。因此_fastcall通常规定将前两个(或若干个)参数由寄存器传递,其余参数还是通过堆栈传递。不同编译器编译的程序规定的寄存器不同。返回方式和_stdcall相当。 

作者  | 2011-8-30 13:43:28 | 阅读(40) |评论(0) | 阅读全文>>

[转]extern "C"

2011-8-30 13:38:43 阅读21 评论0 302011/08 Aug30

如果要在C++程序中引用C程序中的变量,要在extern后加"C"。在appmodul.cpp(MFC核心头文件)中有一个例子extern "C" int WINAPI,引用了crtexe.c里的WINAPI变量。
  常用的 extern "C" 是把导出函数声明为C编译。由于C++编译器在编译的时候会造成其函数名的该变,在其他应用程序中导致函数不可调用,而C编译器则不会在编译后改变其函数名。这样如果用C编译的程序来调用该dll中的函数时,可能会造成找不到该函数。但若要实现函数的重载应该使用def文件。
  代码中使用如下实现
  #ifdef __cplusplus
  extern "C"{
  #endif

作者  | 2011-8-30 13:38:43 | 阅读(21) |评论(0) | 阅读全文>>

Code::Blocks+wxWidgets

2011-8-29 22:17:31 阅读43 评论0 292011/08 Aug29

wxwidgets 是一个c++编写的用来提供gui开发的框架。它包含一个可以支持现今几乎所有操作系统(Version 2 currently supports all desktop versions of MS Windows, Unix with GTK+, Unix with Motif, and MacOS. An OS/2 port is in progress.)的GUI库和其他一些很有用的工具,提供了类似MFC的功能。而且,特别要说一下,这个c++lib还的新版

作者  | 2011-8-29 22:17:31 | 阅读(43) |评论(0) | 阅读全文>>

Win7+WinDbg+VMware调试环境搭建

2011-8-21 16:31:13 阅读101 评论0 212011/08 Aug21

主机:Win7

虚拟机:VMware 7.1.4 build-385536

GUestOSwindows xp Professional sp3

作者  | 2011-8-21 16:31:13 | 阅读(101) |评论(0) | 阅读全文>>

查看所有日志>>

 
 
 
 
 
 我要留言
 
 
 
留言列表加载中...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2012

   
创建博客 登录  
 关注