请选择入口: 主站 | 电信 | 网通 | 软件商城 | 域名主机
首页 | 分类 | 最近更新 | 排行榜 | 推荐软件 | 手机软件 | 软件资讯 | 装机必备 | 动画游戏 | 软件商城 | 软件发布
网络软件   系统工具   应用软件   联络聊天   图形图像   多媒体类   行业软件   游戏娱乐   编程开发   安全相关   教育教学
高级搜索
 软件报道 | 业界新闻 | 安全资讯 | 软件教程 | 网络软件 | 系统工具 | 应用软件 | 联络聊天 | 图形图像
 多媒体类 | 游戏娱乐 | 数码软件 | 安全相关 | 教育教学 | 操作系统 | 办公软件 | 组网专区 | 网上冲浪
 设计学院 | Photoshop | Flash | Dreamweaver | Fireworks | FrontPage | 3DMAX
您的位置:资讯首页 -> 软件教程 -> 组网专区 -> 快速掌握PL/SQL的多进程通信技术
快速掌握PL/SQL的多进程通信技术
作者:不详   来源:赛迪网技术社区   加入时间:2007-11-26
 

PL/SQL是基于Oracle的一个主流应用程序编程语言,它的主要特点是将SQL语句与过程化程序开发语言相结合,以实现更为复杂的商业逻辑。本文主要就其中多进程通信进行讨论。  

显然,多进程技术是用来提高应用的并发性,进而提高整个系统的执行效率,那么如何在PL/SQL中实现多进程的通信呢?其实,PL/SQL其设计的初衷主要是增强SQL语句的功能,而没有考虑到其他编程语言的高级功能,所以在PL/SQL中实现多进程通信只能借助于Oracle提供的两个开发包:DBMS_PIPE和DBMS_ALERT。

 1.DBMS_PIPE  

该包提供多进程之间管道通信的方法,比如连接到同一个数据库的两个独立会话之间可以通过管道进行通信,另外也可以在存储过程和Pro*C之间进行通信,这样就大大地增强了PL/SQL的处理能力。该包主要提供两对函数:

 pack_message(v_msg varchar2)-----将v_msg信息打包放入到缓冲器中,准备发送;  

send_message(v_pipename varchar2)-----发送名为v_pipename的管道的缓冲器;  

unpack_message(v_msg varchar2)-----将信息解析到v_msg中;  

receive_message(v_pipename varchar2)----接受名为v_pipename的管道的缓冲器;  

其执行的原理是:首先建立有名管道(这点熟悉unix很清楚),管道的发送端和接受端都有相应的缓冲器进行接受和发送处理,要注意的是,文本信息必须打包来发送,通过解析来读取信息。  

为了理解前面的描述,下面列举一个两个会话之间通信的实例。  

发送进程:  

declare
v_pipename varchar2(30):='pipe1';
v_status integer;
begin
dbms_pipe.pack_message(' hello,this is sending process!');
v_status:=dbms_pipe.send_message(v_pipename);
if v_status !=0 then
dbms_output.put_line('error!');
end if;
end;
/

 接受进程:  

declare
v_pipename varchar2(30):='pipe1';
v_status integer;
v_msg varchar2(20);
begin
v_status:=dbms_pipe.receive_message(v_pipename);
if v_status !=0 then
dbms_output.put_line('error');
end if;
dbms_pipe.unpack_message(v_msg);
dbms_output.put_line(v_msg);
end;
/

 2.DBMS_ALERT  

与DBMS_PIPE类似,DBMS_ALERT可以实现多个进程(会话)之间的通信。其基本的执行过程为:首先建立一个报警通道,然后通过报警通道来发送报警信号;在接收端需要先注册该报警通道,对该通道进行监听,然后等待报警信号的到来。下面是该包中的主要函数说明:

 
[1] [2] 下一页
上一篇:网管心得 局域网加速之另类妙招 下一篇:SQL Server数据库的嵌套子查询
发给好友 给我们投稿 加为收藏
 
 相关软件:
佳宜销售管理软件 2.09 SQL网络版...
行健客户管理软件 单机专业版(SQ...
行健客户管理软件 单机企业版(SQ...
行健客户管理软件 单机精简版版(...
佳宜合同管理软件 1.75 SQL网络版...
易顺佳进销存管理系统 1.03.27 简...
                                    更多>>
 
 相关文章:
奥运时期中文网站面临新的SQL攻击...
教你使用IDS技术 防止SQL注入攻击...
SQL Server SA权限最新入侵方法
SQL脚本注入的不常见方法概括
微软计划八月发布SQLServer 2008
警惕恶意软件 网站SQL注入防御战
                                    更多>>
 
 相关信息:
中快速掌握PL/SQL的多进程通信技术 相关内容
中快速掌握PL/SQL的多进程通信技术 相关内容
 
 文章搜索
 
   
 
 每日资讯
 
 焦点图文 更多... 
 
 本月TOP10
·网管必看 网吧网络问题及...
 
 
 
A B C D E F G H J K L M N O P Q R S T W X Y Z 按第一汉字声母排列

广告联系 | 用户反馈 | 版权声明 | 下载帮助 | 软件发布 | 镜像合作
Copyright©1998 - 2008 Skycn.com All Rights Reserved