【技术实现步骤摘要】
本专利技术涉及通信
,特别涉及。
技术介绍
随着现代信息产业的不断深入发展,对于信息的集成和共享的需求也变得日益迫切。为了增大吞吐量,提高CPU的利用率,服务器端的程序一般都会采用多线程技术或者多进程技木。相对于单线程/迸程来说,多进程/线程模式的效率更高,但是随之而来的,程序复杂性会急剧増大,因为多个线程/进程为了完成特定的功能必须要相互协作,也就是它们需要同步和通信。 在unix系统中,进程间的通信可以通过信号来实现,在进程启动时,首先调用signal (signo, handle)注册 信号处理函数,然后等待其他进程发送信号来作出相应的动作。这种机制非常地方便。而对于多线程来说,通常是通过全局变量来实现的,工作线程通过检测全局变量值的变化来作出相应的动作。这种方式在简单的应用中已经足够了,但是在像数据库系统这种复杂的系统中使用将会使得代码的可读性及可维护性下降。这种通过全局状态变量来通信的做法,对于线程数量少,通信需求不大的情形来说已经足够了,但是对于数据库这种复杂的系统来说,这种技术方案主要有以下几个缺点全局变量泛滥;代码的可读性下降;可维护性下降 ...
【技术保护点】
一种数据库系统中线程间的模拟信号通信方法,其特征在于,包括:数据库系统下直接设置一信号管理器,所述信号管理器中设置并存储各个线程的线程消息ThreadInfo,在该线程消息ThreadInfo中设置本线程可接收并处理不同信号信息,并设置不同信号对应的标识;在线程开始时注册本线程各个信号所对应的处理函数信息;当某一线程需要给目标线程发送信号时,在该目标线程的线程消息ThreadInfo中修改该信号的对应标识;该目标线程接收该标识,并通过该信号对相应的处理函数进行处理。
【技术特征摘要】
【专利技术属性】
技术研发人员:李书淦,李浩,赵伟,郑程光,孙伟丰,罗正海,李泉,程仁波,
申请(专利权)人:上海方正数字出版技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。