我试图在C++(Windows)中的两个进程之间创建一个简单的通信,如linux中的FIFO.这是我的服务器:
int main()
{
HANDLE pipe = CreateFile(TEXT("\\\\.\\pipe\\Pipe"), GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, NULL);
ConnectNamedPipe(pipe, NULL);
while(TRUE){
string data;
DWORD numRead =1 ;
ReadFile(pipe, &data, 1024, &numRead, NULL);
cout << data << endl;
}
CloseHandle(pipe);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这是我的客户:
int main()
{
HANDLE pipe = CreateFile(TEXT("\\\\.\\pipe\\Pipe"), GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
ConnectNamedPipe(pipe, NULL);
string message = "TEST";
DWORD numWritten;
WriteFile(pipe, message.c_str(), message.length(), &numWritten, NULL);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
代码不起作用,如何将其修复为FIFO?
我刚刚下载了elasticsearch并运行elasticsearch.bat。所以我没有修改任何内容,但是当我尝试访问 localhost:9200 或 9300 时不起作用。
根据日志,它开始正常。
[2022-03-14T16:42:47,633][INFO ][o.e.i.r.RecoverySettings ] [DESKTOP-3DPA0JQ] using rate limit [40mb] with [default=40mb, read=0b, write=0b, max=0b]
[2022-03-14T16:42:47,664][INFO ][o.e.d.DiscoveryModule ] [DESKTOP-3DPA0JQ] using discovery type [multi-node] and seed hosts providers [settings]
[2022-03-14T16:42:48,507][INFO ][o.e.n.Node ] [DESKTOP-3DPA0JQ] initialized
[2022-03-14T16:42:48,508][INFO ][o.e.n.Node ] [DESKTOP-3DPA0JQ] starting ...
[2022-03-14T16:42:48,564][INFO ][o.e.x.s.c.f.PersistentCache] [DESKTOP-3DPA0JQ] persistent cache index loaded
[2022-03-14T16:42:48,565][INFO ][o.e.x.d.l.DeprecationIndexingComponent] [DESKTOP-3DPA0JQ] deprecation component started
[2022-03-14T16:42:48,692][INFO ][o.e.t.TransportService ] [DESKTOP-3DPA0JQ] publish_address {127.0.0.1:9300}, bound_addresses {127.0.0.1:9300}, {[::1]:9300}
[2022-03-14T16:42:49,065][INFO ][o.e.c.c.Coordinator ] [DESKTOP-3DPA0JQ] cluster UUID [M7j_3np8QtCiMDZ8hLGu6w]
[2022-03-14T16:42:49,157][INFO ][o.e.c.s.MasterService ] [DESKTOP-3DPA0JQ] elected-as-master ([1] nodes joined)[{DESKTOP-3DPA0JQ}{n3yQhC4cQveWn_x7QrQPYQ}{QSgY7a2zQDWZClJOW_2yEg}{127.0.0.1}{127.0.0.1:9300}{cdfhilmrstw} …Run Code Online (Sandbox Code Playgroud)