networks-1.cpp/main.cpp

35 lines
952 B
C++

import std;
import ru.landgrafhomyak.BGTU.networks_1.threads;
import ru.landgrafhomyak.BGTU.networks_1.sockets;
int main() {
LdH::Sockets::init_sockets();
std::cout << LdH::Sockets::Address::parse("google.com", "443").to_string() << std::endl;
auto server = LdH::Sockets::listen_tcp(LdH::Sockets::Address::parse("127.0.0.1", "8081"), 1);
auto server_thread = LdH::fork("server", [&] {
auto server_stream = server.wait_for_connection();
char buffer[10];
server_stream.sock.read(10, buffer);
std::cout << buffer << std::endl;
server_stream.sock.close();
});
auto client_thread = LdH::fork("client", [&] {
auto client = LdH::Sockets::connect_tcp(LdH::Sockets::Address::parse("127.0.0.1", "8081"));
char buffer[10] = "hello\n";
client.write(10, buffer);
client.close();
});
server_thread.join();
client_thread.join();
server_thread.destroy();
client_thread.destroy();
server.close();
LdH::Sockets::deinit_sockets();
}