CN111722944A - NIO-based AIRT-ROS communication method and system - Google Patents

NIO-based AIRT-ROS communication method and system Download PDF

Info

Publication number
CN111722944A
CN111722944A CN202010542848.2A CN202010542848A CN111722944A CN 111722944 A CN111722944 A CN 111722944A CN 202010542848 A CN202010542848 A CN 202010542848A CN 111722944 A CN111722944 A CN 111722944A
Authority
CN
China
Prior art keywords
thread
server
current
event
data channel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010542848.2A
Other languages
Chinese (zh)
Other versions
CN111722944B (en
Inventor
丁亮
张亚楠
夏科睿
王飞
侯旗
张成林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei Hagong Xuanyuan Intelligent Technology Co ltd
Original Assignee
HRG International Institute for Research and Innovation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by HRG International Institute for Research and Innovation filed Critical HRG International Institute for Research and Innovation
Priority to CN202010542848.2A priority Critical patent/CN111722944B/en
Publication of CN111722944A publication Critical patent/CN111722944A/en
Application granted granted Critical
Publication of CN111722944B publication Critical patent/CN111722944B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer And Data Communications (AREA)

Abstract

The invention provides an AIRT-ROS communication method and a system based on NIO, which are applied to a server and comprise the following steps: 1) associating a Selector for each thread, and registering at least two data channels by each Selector; 2) the Selector thread monitoring server receives a connection request of a client and distributes a connection SelectionKey to a working thread; binding a current data channel with a current thread deployed at a server, and distributing a connection SelectionKey corresponding to the current data channel to the current thread to register the current data channel in the thread; 3) and the CPU of the server schedules the current thread to execute the I/O operation, and broadcasts the event to other CPUs for data processing after the CPU finishes the data processing task. By applying the embodiment of the invention, the working efficiency is improved.

Description

NIO-based AIRT-ROS communication method and system
Technical Field
The invention relates to an AIRT-ROS (Artificial Intelligence Radio transmitter Robot Operating System) communication based on NIO (Non-block Input/Output), in particular to an AIRT-ROS communication method based on NIO.
Background
At present, a common service framework is generally used in AIRT-ROS communication to process requests, and the process is as follows: first, a link is established, but when the data of the service requiring IO cannot arrive immediately, the current service is put into the BIO (block IO), and the thread waiting for IO must be blocked, which is inefficient.
In order to improve the efficiency of the service framework, the invention patent application with the application number of CN201910411724.8 discloses a system for optimizing message processing for a big data distribution system based on NIO, which comprises a message generating module; a message distribution module; a message sending module; a message receiving module; the message processing module is used for carrying out corresponding service operation according to the service information in the received message; and the message return processing module is used for waiting for the processing result of the message. The invention also relates to a method for carrying out message processing optimization control on the big data distributed system based on the NIO. By adopting the system and the method for optimizing the message processing aiming at the big data distributed system based on the NIO, the problem of high resource occupation during message communication between the distributed systems can be effectively reduced, the message communication efficiency is improved, the message communication timeliness is ensured, and the system has strong universality, flexible architecture and high expandability. The method adopted by the invention well meets the requirements of large-batch and high-concurrency message communication among the existing distributed systems, and has wide application range. In the prior art, synchronization means that a thread continuously polls whether an IO event is ready; non-blocking means that a thread can do other tasks while waiting for IO. In the implementation scheme of synchronous polling, the multi-selection Selector replaces the polling IO event of the thread, so that the blocking is avoided and the unnecessary thread consumption is reduced. In the synchronous polling method, the polling is performed by the Selector, but the efficiency of the thread itself is not improved. The non-blocking cores are channels and buffers, and when an IO event is ready, the success of the IO can be guaranteed by writing to the buffers without waiting in a thread blocking manner. Although the non-blocking mode sets a channel and opens up a buffer area, the processing of the IO event depends on the size of the buffer area, and the scheduling efficiency of the system resource and the thread processing the transaction is not improved, so that the technical problem of low scheduling efficiency of the service framework still exists in the prior art.
Disclosure of Invention
The technical problem to be solved by the invention is how to provide an air-ROS communication method and system based on NIO to improve the scheduling efficiency between threads.
The invention solves the technical problems through the following technical means:
the embodiment of the invention provides an AIRT-ROS communication method based on NIO, which is applied to a server and comprises the following steps:
1) associating a Selector for each thread in the thread pool, wherein each Selector registers at least two data channels; initializing a data channel and creating pipeline as a linked list section;
2) the Selector thread monitoring server receives a connection request of a client and distributes a connection SelectionKey to a working thread; binding a current data channel with a current thread deployed at a server, and distributing a connection SelectionKey corresponding to the current data channel to the current thread to register the current data channel in the thread;
3) and the CPU of the server schedules the current thread to execute the I/O operation, and broadcasts the event to other CPUs for data processing after the CPU finishes the data processing task.
By applying the embodiment of the invention, one Selector is associated with each thread in the thread pool, wherein each Selector registers at least two data channels, and an architecture that one thread is shared by a plurality of data channels is formed, namely, one thread has a plurality of roads, so that the service architecture has higher working efficiency than the method for adjusting the working mode of the thread or the size of the buffer area in the prior art.
Optionally, the step of binding the current data channel and the current thread in step 2) includes:
and calling a bind method in the unsafee to bind the current data channel with the current thread.
Optionally, an overtime task is added in the thread, so that the client is connected with the server again when the connection between the client and the server is not successfully established after the set time length is exceeded, until the connection frequency reaches a preset threshold value.
Optionally, after the client is connected to the thread on the server through the data channel, a read snoop event, a write snoop event, and an end snoop event are defined in pipeline, where the read snoop event is triggered when the client sends data and has been correctly read by the current thread; when the client starts to receive data sent by the server, triggering a write monitoring event; and when the client is disconnected with the server, triggering an event for ending the monitoring.
The embodiment of the invention also provides an AIRT-ROS communication system based on NIO, which is applied to a server and comprises:
the device comprises an association module, a data channel selection module and a data channel selection module, wherein the association module is used for associating a Selector for each thread in a thread pool, and each Selector registers at least two data channels; initializing a data channel and creating pipeline as a linked list section;
the binding module is used for a Selector thread monitoring server and distributing a connection SelectionKey to a working thread after receiving a connection request of a client; binding a current data channel with a current thread deployed at a server, and distributing a connection SelectionKey corresponding to the current data channel to the current thread to register the current data channel in the thread;
and the broadcasting module is used for scheduling the current thread to execute the I/O operation by the CPU of the server, and broadcasting the event to other CPUs for data processing after the CPU finishes the data processing task.
Optionally, the CPU of the server schedules the current thread to perform an I/O operation:
and calling a bind method in the unsafee to bind the current data channel with the current thread.
Optionally, the binding module is configured to:
and adding an overtime task in the thread so as to enable the client to be connected with the server again under the condition that the connection between the client and the server is not successfully established after the set time length is exceeded until the connection frequency reaches a preset threshold value.
Optionally, the binding module is configured to:
after a client is connected to a thread on a server through a data channel, defining a read monitoring event, a write monitoring event and an end monitoring event in pipeline, wherein when the client sends data and is correctly read by the current thread, the read monitoring event is triggered; when the client starts to receive data sent by the server, triggering a write monitoring event; and when the client is disconnected with the server, triggering an event for ending the monitoring.
The invention has the advantages that:
by applying the embodiment of the invention, one Selector is associated with each thread in the thread pool, wherein each Selector registers at least two data channels, and an architecture that one thread is shared by a plurality of data channels is formed, namely, one thread has a plurality of roads, so that the service architecture has higher working efficiency than the method for adjusting the working mode of the thread or the size of the buffer area in the prior art.
Drawings
FIG. 1 is a schematic flow chart of an AIRT-ROS communication method based on NIO according to an embodiment of the present invention;
fig. 2 is a schematic structural diagram of an AIRT-ROS communication apparatus based on NIO according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the embodiments of the present invention, and it is obvious that the described embodiments are some embodiments of the present invention, but not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Example 1
FIG. 1 is a schematic flow chart of an AIRT-ROS communication method based on NIO according to an embodiment of the present invention; fig. 2 is a schematic structural diagram of an AIRT-ROS communication apparatus based on NIO according to an embodiment of the present invention, as shown in fig. 1 and fig. 2, the method includes:
s101 (not shown), a thread pool (Event Loop Group) is initialized, and the thread pool is a collection of a plurality of threads (Event Loop). As shown in fig. 2, each thread in the thread pool is a single thread, and each thread is associated with a Selector. The function of the Selector is to take a plurality of Selectable data channels (Selectable channels) as objects and multiplex them. In general, a selector object can be created by calling the selector. open () function. The Selector is a long monitoring link and is used for monitoring a server, receiving a TCP connection request of a client and then distributing a selection key for connection to a working thread.
And then registering the data channel into a selector corresponding to the data channel, and returning a SelectionKey object representing the registration relationship after registration. The selectorkey object represents the identity of the data channel registered in the Selector. Each data channel will create a selectionKey when registered with a Selector. The permission SelectionKey between the thread and the data channel is a character string used for registering the data channel, and forms a thread which is shared by a plurality of data channels. Channel IO selection operations, as well as non-IO tasks, are performed on the thread.
Pipeline is created after the data channel is initialized, is a chain link of a handler, and is used for storing data to be processed. In the embodiment of the invention, when data arrives, the data can be written into the pipeline serving as the buffer area in advance and then delivered to the thread by the pipeline, so that the thread waits for IO without blocking, and the execution efficiency of the service framework is further improved. Pipeline can receive a message, wherein the message is composed of a data header, a data channel handle and a data trailer.
The process of initializing and creating the channel and registering the channel comprises the following steps: the creation channel- > initialization channel- > channel registration of the template method.
When the client needs IO operation, the service framework directly calls a plurality of data channels between the port and the working thread to perform IO operation, namely business logic is processed by the working thread, and the IO operation is processed by the plurality of data channels between the port and the working thread.
And the client ends the service request, the service framework releases the plurality of data channels between the working thread and the port, the service framework releases the working thread, and the working thread returns to the thread pool again to wait for next call.
A plurality of data channels are bound between the working threads and the ports by the service framework, and IO operation is automatically completed by the data channels, so that the IO working efficiency is improved.
In practical application, the thread may use a plurality of registered data channels at the same time, or the data channel with the best communication quality may be selected after the communication quality of the data channels is evaluated; the data channel with better communication quality can be used for transmitting data with high priority, and the data channel with other communication quality can be used for transmitting data with low priority, wherein the communication quality and the data priority can be predefined.
S102 (not shown in the figure), the Selector thread monitors the server, when the client sends a connection request, such as a TCP connection request, to the server, the server is bound to a designated port, that is, a binding operation is performed between the initialized and registered data channel and the server, the data channel is mainly bound to a current thread corresponding to the TCP connection request, and then a registration operation of the current data channel is performed in the thread.
Furthermore, in order to maximize the reuse of the code, the server is bound to the designated port, the port binding operation is executed in the thread, and finally, the bind method of the unsafe is called to complete the port binding operation. Initializing data channel and data channel registration is accomplished through initAndRegister ().
The client is remotely connected with the thread through a Channel (data Channel). After the cpu schedules the thread, the thread reads data, and executes run () function inside the thread, thereby implementing read or write operation.
In addition, one core of the processor may run one thread. When there are multiple threads and multiple processor cores, a thread may be executed by a processor core with idle cpu time.
S103, the CPU of the server schedules the current thread to execute the I/O operation, and broadcasts the event to other CPUs for data processing after the CPU finishes the data processing task
After the IO event is processed by the thread. The server broadcasts the result that the event has been processed to the other processors, i.e. all registered event processors can get the event notification, and the other processors will not process the same quality of service after receiving the notification. Therefore, the service processing with different properties can be realized by different processors respectively, and the function of each processor is as single as possible.
By applying the embodiment of the invention, one Selector is associated with each thread in the thread pool, wherein each Selector registers at least two data channels, and an architecture that one thread is shared by a plurality of data channels is formed, namely, one thread has a plurality of roads, so that the service architecture has higher working efficiency than the method for adjusting the working mode of the thread or the size of the buffer area in the prior art.
In addition, the embodiment of the invention ensures the performance, stability and flexibility of the application while ensuring easy development, and is particularly suitable for application scenes with various service request types and short service response time.
Further, in a specific implementation manner of the embodiment of the present invention, a timeout task is added to a thread: firstly, establishing an overtime task queue, putting the overtime task queue into the queue when the task is not successfully connected, and continuously polling by a process on a server; and when the task connection is successful, deleting the overtime task and informing the client. When the polling times reach the set threshold value, or the polling duration is overtime, the connection is closed to release the process and inform the client. Because the existing method does not set the overtime task and does not try to reestablish the connection for the overtime task, the embodiment of the invention sets the reconnection opportunity, avoids the situation of incapability of connection caused by network fluctuation and further improves the reliability of connection.
It should be noted that, in practical applications, each processor has as single function as possible; polling is performed at the server.
Further, in another specific implementation manner of the embodiment of the present invention, the client starts to perform a connection operation, and the client directly adds a handle of the builder method (storing contents in Pipeline, which correspond to data channels one to one) to Pipeline (storing contents in Pipeline, which stores contents to be processed), and some general attributes of the nio operation. The Pipeline defines read, write, and end events, which are handled by onRead, onWrite, onClosed events, respectively, e.g.,
an onRead event may be defined that is triggered when data is sent from the client and has been correctly read by the worker thread. The event informs each event handler that the data sent from the client can be processed.
An onWrite event may be defined that is triggered when the client can begin accepting the server sending data, by which response data can be sent to the client.
An onClosed event may be defined that is triggered when the client disconnects from the server. The trigger triggers corresponding events, and the event processor respectively responds to the corresponding events to complete the service processing of the server side. And finally, the connection server is also executed in the thread, and finally calls the connect method of the unsafe. And if the result is failed, the result is not known temporarily, the OP _ CONNECT is detected, and the link is closed directly due to exception.
In the embodiment of the invention, the defined onRead, onWrite and onClosed functions belong to a delegated event processing mechanism, and when a specified event occurs in an event source, a specified event listener is notified to execute a corresponding operation. The event monitoring mechanism comprises three types of objects of an event source, an event and an event monitor, and the processing flow comprises that 1, a monitor is arranged for a certain event source (component) and is used for monitoring user operation; 2, the operation of the user triggers the monitor of the event source; generating a corresponding event object; 4, transmitting the event source object as a parameter to an event monitor; and 5, judging the event object by the event monitor, and executing a corresponding event processor (corresponding event processing method).
In the embodiment of the present invention, onRead, onWrite, onClosed are all trigger events, and exist as a mechanism for registering snooping, so as to trigger corresponding codes when the conditions of "readable", "writable", and "closeable" are satisfied. The advantage of doing so is that do not need to listen to "read, write, close" state at all times, have saved spin lock and so on empty and consume the way of cpu time.
The above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.

Claims (8)

1. An AIRT-ROS communication method based on NIO is characterized in that the method is applied to a server side and comprises the following steps:
1) associating a Selector for each thread in the thread pool, wherein each Selector registers at least two data channels; initializing a data channel and creating pipeline as a linked list section;
2) the Selector thread monitoring server receives a connection request of a client and distributes a connection SelectionKey to a working thread; binding a current data channel with a current thread deployed at a server, and distributing a connection SelectionKey corresponding to the current data channel to the current thread to register the current data channel in the thread;
3) and the CPU of the server schedules the current thread to execute the I/O operation, and broadcasts the event to other CPUs for data processing after the CPU finishes the data processing task.
2. The method of claim 1, wherein the step of binding the current data channel with the current thread in step 2) comprises:
and calling a bind method in the unsafee to bind the current data channel with the current thread.
3. The NIRT-ROS communication method according to claim 1, wherein a timeout task is added in a thread to make the client connect with the server again until the number of connections reaches a preset threshold if the client does not successfully establish a connection with the server for more than a set duration.
4. The NIO-based AIRT-ROS communication method of claim 1, wherein after the client connects to the thread on the server through the data channel, a read snoop event, a write snoop event, and an end snoop event are defined in pipeline, wherein the read snoop event is triggered when the client sends data and has been correctly read by the current thread; when the client starts to receive data sent by the server, triggering a write monitoring event; and when the client is disconnected with the server, triggering an event for ending the monitoring.
5. An air-ROS communication system based on NIO, which is applied to a server, the system comprising:
the device comprises an association module, a data channel selection module and a data channel selection module, wherein the association module is used for associating a Selector for each thread in a thread pool, and each Selector registers at least two data channels; initializing a data channel and creating pipeline as a linked list section;
the binding module is used for a Selector thread monitoring server and distributing a connection SelectionKey to a working thread after receiving a connection request of a client; binding a current data channel with a current thread deployed at a server, and distributing a connection SelectionKey corresponding to the current data channel to the current thread to register the current data channel in the thread;
and the broadcasting module is used for scheduling the current thread to execute the I/O operation by the CPU of the server, and broadcasting the event to other CPUs for data processing after the CPU finishes the data processing task.
6. The NIO-based AIRT-ROS communication system according to claim 5, wherein said scheduling by the CPU of the server the current thread to perform I/O operations:
and calling a bind method in the unsafee to bind the current data channel with the current thread.
7. The NIO-based AIRT-ROS communication system of claim 5, wherein the binding module is configured to:
and adding an overtime task in the thread so as to enable the client to be connected with the server again under the condition that the connection between the client and the server is not successfully established after the set time length is exceeded until the connection frequency reaches a preset threshold value.
8. The NIO-based AIRT-ROS communication system of claim 5, wherein the binding module is configured to:
after a client is connected to a thread on a server through a data channel, defining a read monitoring event, a write monitoring event and an end monitoring event in pipeline, wherein when the client sends data and is correctly read by the current thread, the read monitoring event is triggered; when the client starts to receive data sent by the server, triggering a write monitoring event; and when the client is disconnected with the server, triggering an event for ending the monitoring.
CN202010542848.2A 2020-06-15 2020-06-15 NIO-based AIRT-ROS communication method and system Active CN111722944B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010542848.2A CN111722944B (en) 2020-06-15 2020-06-15 NIO-based AIRT-ROS communication method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010542848.2A CN111722944B (en) 2020-06-15 2020-06-15 NIO-based AIRT-ROS communication method and system

Publications (2)

Publication Number Publication Date
CN111722944A true CN111722944A (en) 2020-09-29
CN111722944B CN111722944B (en) 2023-04-18

Family

ID=72566917

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010542848.2A Active CN111722944B (en) 2020-06-15 2020-06-15 NIO-based AIRT-ROS communication method and system

Country Status (1)

Country Link
CN (1) CN111722944B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112559146A (en) * 2020-12-07 2021-03-26 河南中烟工业有限责任公司 Communication method between client and data terminal server
CN113553199A (en) * 2021-07-14 2021-10-26 浙江亿邦通信科技有限公司 Method and device for processing multi-client access by using asynchronous non-blocking mode
CN113608894A (en) * 2021-08-04 2021-11-05 电子科技大学 Fine granularity-oriented algorithm component operation method

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR9711949A (en) * 1996-10-18 1999-08-24 Ericsson Telefon Ab L M Domain of the telecommunications system with the ability to relocate the number of subscriber handsets and the process of operating a telecommunications system.
KR20080059934A (en) * 2006-12-26 2008-07-01 학교법인 대전기독학원 A thread management method and system of the server using non-blocking input and output
CN101651698A (en) * 2007-12-12 2010-02-17 浙江大学 Transmission method for publish/subscribe system based on NIO and IO
CN104079398A (en) * 2013-03-28 2014-10-01 腾讯科技(深圳)有限公司 Data communication method, device and system
CN107769935A (en) * 2016-08-23 2018-03-06 北京神州泰岳软件股份有限公司 A kind of method for message transmission and device
CN108183918A (en) * 2018-01-16 2018-06-19 北京安博通科技股份有限公司 A kind of AAA high concurrents authentication method and system
CN109213143A (en) * 2017-07-03 2019-01-15 百度(美国)有限责任公司 Operate the centralized dispatching system using event loop of automatic driving vehicle

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR9711949A (en) * 1996-10-18 1999-08-24 Ericsson Telefon Ab L M Domain of the telecommunications system with the ability to relocate the number of subscriber handsets and the process of operating a telecommunications system.
KR20080059934A (en) * 2006-12-26 2008-07-01 학교법인 대전기독학원 A thread management method and system of the server using non-blocking input and output
CN101651698A (en) * 2007-12-12 2010-02-17 浙江大学 Transmission method for publish/subscribe system based on NIO and IO
CN104079398A (en) * 2013-03-28 2014-10-01 腾讯科技(深圳)有限公司 Data communication method, device and system
CN107769935A (en) * 2016-08-23 2018-03-06 北京神州泰岳软件股份有限公司 A kind of method for message transmission and device
CN109213143A (en) * 2017-07-03 2019-01-15 百度(美国)有限责任公司 Operate the centralized dispatching system using event loop of automatic driving vehicle
CN108183918A (en) * 2018-01-16 2018-06-19 北京安博通科技股份有限公司 A kind of AAA high concurrents authentication method and system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
黄天天等: "基于Netty框架的农村应急广播高并发数据处理", 《湖南农业科学》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112559146A (en) * 2020-12-07 2021-03-26 河南中烟工业有限责任公司 Communication method between client and data terminal server
CN112559146B (en) * 2020-12-07 2023-04-18 河南中烟工业有限责任公司 Communication method between client and data terminal server
CN113553199A (en) * 2021-07-14 2021-10-26 浙江亿邦通信科技有限公司 Method and device for processing multi-client access by using asynchronous non-blocking mode
CN113553199B (en) * 2021-07-14 2024-02-02 浙江亿邦通信科技有限公司 Method and device for processing multi-client access by using asynchronous non-blocking mode
CN113608894A (en) * 2021-08-04 2021-11-05 电子科技大学 Fine granularity-oriented algorithm component operation method

Also Published As

Publication number Publication date
CN111722944B (en) 2023-04-18

Similar Documents

Publication Publication Date Title
CN111722944B (en) NIO-based AIRT-ROS communication method and system
CN106161537B (en) Method, device and system for processing remote procedure call and electronic equipment
CA2245963C (en) Distributed kernel operating system
CN103888441A (en) Information transmitting method between application and protocol stack and processing device
CA2536037A1 (en) Fast and memory protected asynchronous message scheme in a multi-process and multi-thread environment
US9323591B2 (en) Listening for externally initiated requests
CN101159747A (en) TCP concurrency multilink based communication system and method therefor
CN105141603B (en) Communication data transmission method and system
CN113422842B (en) Distributed power utilization information data acquisition system considering network load
CN103618590A (en) Overtime control method and device of business processing process
CN113259415B (en) Network message processing method and device and network server
CN114840318A (en) Scheduling method for preempting hardware key encryption and decryption resources through multiple processes
CN108737397B (en) Method for realizing data interaction between service and protocol stack in router
US20020004868A1 (en) Parallel processing system in which use efficiency of CPU is improved and parallel processing method for the same
CN100426241C (en) Message level soft interrupt processing method in service system structure
CN113412478A (en) Message transmitting/receiving method, communication device, and program
CN114153573A (en) Multitasking method based on single thread pool and related device
CN102693434A (en) Communication apparatus and method for interface layer of radio frequency identification device
US20030023775A1 (en) Efficient notification of multiple message completions in message passing multi-node data processing systems
CN116684074B (en) Method and device for driving multi-core scheduling algorithm of hardware password module and electronic equipment
CN109450706A (en) A kind of FC network configuration data automatic loading method based on ruling mechanism
US11789777B2 (en) Resource utilization method, electronic device, and computer program product
JP2000267960A (en) Method for communicating packet between plural processes and packet communication equipment
CN109039931B (en) Method and device for optimizing performance of virtualization equipment
US20040133642A1 (en) Server and application programming interface for distributed rendezvous

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20220919

Address after: 236000 room 316, building 3, Zone C, intelligent technology park, No. 3963 Susong Road, Hefei Economic and Technological Development Zone, Anhui Province

Applicant after: Hefei Hagong Xuanyuan Intelligent Technology Co.,Ltd.

Address before: Room 6012, Haiheng building, No.6 Cuiwei Road, Hefei Economic and Technological Development Zone, Anhui Province

Applicant before: HRG INTERNATIONAL INSTITUTE FOR RESEARCH & INNOVATION

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant