forked from ShuriZma/suyu
fixup! Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
This commit is contained in:
parent
073653e858
commit
0a33d915f8
|
@ -84,13 +84,13 @@ public:
|
|||
*/
|
||||
bool IsWaitable() const {
|
||||
switch (GetHandleType()) {
|
||||
case HandleType::ServerSession:
|
||||
case HandleType::ServerPort:
|
||||
case HandleType::Event:
|
||||
case HandleType::Mutex:
|
||||
case HandleType::Thread:
|
||||
case HandleType::Semaphore:
|
||||
case HandleType::Timer:
|
||||
case HandleType::ServerPort:
|
||||
case HandleType::ServerSession:
|
||||
return true;
|
||||
|
||||
case HandleType::Unknown:
|
||||
|
@ -101,6 +101,7 @@ public:
|
|||
case HandleType::ResourceLimit:
|
||||
case HandleType::CodeSet:
|
||||
case HandleType::ClientPort:
|
||||
case HandleType::ClientSession:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -48,7 +48,7 @@ SharedPtr<ClientSession> ServerSession::CreateClientSession() {
|
|||
return ClientSession::Create(SharedPtr<ServerSession>(this), nullptr, name + "Client").MoveFrom();
|
||||
}
|
||||
|
||||
std::tuple<SharedPtr<ServerSession>, SharedPtr<ClientSession>> ServerSession::CreateSessionPair(SharedPtr<ClientPort> client_port, std::string name) {
|
||||
std::tuple<SharedPtr<ServerSession>, SharedPtr<ClientSession>> ServerSession::CreateSessionPair(SharedPtr<ClientPort> client_port, const std::string& name) {
|
||||
auto server_session = ServerSession::Create(name + "Server").MoveFrom();
|
||||
auto client_session = ClientSession::Create(server_session, client_port, name + "Client").MoveFrom();
|
||||
|
||||
|
|
|
@ -200,7 +200,7 @@ public:
|
|||
* @param name Optional name of the ports
|
||||
* @return The created session tuple
|
||||
*/
|
||||
static std::tuple<SharedPtr<ServerSession>, SharedPtr<ClientSession>> CreateSessionPair(SharedPtr<ClientPort> client_port, std::string name = "Unknown");
|
||||
static std::tuple<SharedPtr<ServerSession>, SharedPtr<ClientSession>> CreateSessionPair(SharedPtr<ClientPort> client_port, const std::string& name = "Unknown");
|
||||
|
||||
/**
|
||||
* Creates a portless ClientSession and associates it with this ServerSession.
|
||||
|
|
|
@ -40,7 +40,7 @@ public:
|
|||
* It should be overwritten by each service implementation for more fine-grained control.
|
||||
* @returns The maximum number of connections allowed.
|
||||
*/
|
||||
virtual u32 GetMaxSessions() { return DefaultMaxSessions; }
|
||||
virtual u32 GetMaxSessions() const { return DefaultMaxSessions; }
|
||||
|
||||
void AddWaitingSession(Kernel::SharedPtr<Kernel::ServerSession> server_session) override { }
|
||||
|
||||
|
|
Loading…
Reference in New Issue