perf(adapter): use neu_event to monitor nng-fd event

This commit is contained in:
fengzero
2022-04-14 09:52:39 +00:00
parent ce9bc3f4d2
commit eacfc6720a
4 changed files with 484 additions and 530 deletions
+474 -526
View File
File diff suppressed because it is too large Load Diff
+6
View File
@@ -24,6 +24,7 @@
#include <nng/protocol/pair1/pair.h>
#include <nng/supplemental/util/platform.h>
#include "event/event.h"
#include "plugin.h"
#include "plugin_info.h"
@@ -53,6 +54,8 @@ struct neu_adapter {
neu_manager_t * manager;
nng_pipe pipe;
nng_socket sock;
nng_dialer dialer;
int recv_fd;
nng_thread * thrd;
uint32_t new_req_id;
plugin_id_t plugin_id;
@@ -64,6 +67,9 @@ struct neu_adapter {
adapter_callbacks_t cb_funs;
neu_config_t node_setting;
vector_t sub_grp_configs; // neu_sub_grp_config_t
neu_events_t * events;
neu_event_io_t *nng_io;
};
neu_adapter_t *neu_adapter_create(neu_adapter_info_t *info,
+3 -3
View File
@@ -108,12 +108,12 @@ static int update(neu_adapter_t *adapter, const char *name, neu_dvalue_t value)
return 0;
}
neu_adapter_driver_t *neu_adapter_driver_create(neu_adapter_t *adapter)
neu_adapter_driver_t *neu_adapter_driver_create()
{
neu_adapter_driver_t *driver = calloc(1, sizeof(neu_adapter_driver_t));
driver->adapter = *adapter;
free(adapter);
// driver->adapter = *adapter;
// free(adapter);
pthread_mutex_init(&driver->grp_mtx, NULL);
driver->cache = neu_driver_cache_new();
+1 -1
View File
@@ -23,7 +23,7 @@
#include "adapter.h"
#include "core/message.h"
neu_adapter_driver_t *neu_adapter_driver_create(neu_adapter_t *adapter);
neu_adapter_driver_t *neu_adapter_driver_create();
void neu_adapter_driver_destroy(neu_adapter_driver_t *driver);
int neu_adapter_driver_start(neu_adapter_driver_t *driver);