Пересмотр асинхронностей
This commit is contained in:
@@ -24,7 +24,8 @@ struct ParsedPacket {
|
||||
virtual ~ParsedPacket();
|
||||
};
|
||||
|
||||
class ServerSession : public AsyncObject, public IServerSession, public ISurfaceEventListener {
|
||||
class ServerSession : public IServerSession, public ISurfaceEventListener {
|
||||
asio::io_context &IOC;
|
||||
std::unique_ptr<Net::AsyncSocket> Socket;
|
||||
IRenderSession *RS = nullptr;
|
||||
DestroyLock UseLock;
|
||||
@@ -56,10 +57,10 @@ class ServerSession : public AsyncObject, public IServerSession, public ISurface
|
||||
public:
|
||||
// Нужен сокет, на котором только что был согласован игровой протокол (asyncInitGameProtocol)
|
||||
ServerSession(asio::io_context &ioc, std::unique_ptr<Net::AsyncSocket> &&socket, IRenderSession *rs = nullptr)
|
||||
: AsyncObject(ioc), Socket(std::move(socket)), RS(rs), NetInputPackets(1024)
|
||||
: IOC(ioc), Socket(std::move(socket)), RS(rs), NetInputPackets(1024)
|
||||
{
|
||||
assert(Socket.get());
|
||||
co_spawn(run());
|
||||
asio::co_spawn(IOC, run(), asio::detached);
|
||||
}
|
||||
|
||||
virtual ~ServerSession();
|
||||
|
||||
@@ -73,7 +73,7 @@ ByteBuffer loadPNG(std::istream &&read, int &width, int &height, bool &hasAlpha,
|
||||
}
|
||||
|
||||
Vulkan::Vulkan(asio::io_context &ioc)
|
||||
: AsyncObject(ioc), GuardLock(ioc.get_executor())
|
||||
: IOC(ioc), GuardLock(ioc.get_executor())
|
||||
{
|
||||
Screen.Width = 1920/2;
|
||||
Screen.Height = 1080/2;
|
||||
@@ -2075,7 +2075,7 @@ void Vulkan::gui_MainMenu() {
|
||||
ConnectionProgress.InProgress = true;
|
||||
ConnectionProgress.Cancel = false;
|
||||
ConnectionProgress.Progress.clear();
|
||||
co_spawn(ConnectionProgress.connect(IOC));
|
||||
asio::co_spawn(IOC, ConnectionProgress.connect(IOC), asio::detached);
|
||||
}
|
||||
|
||||
if(!Game.Server) {
|
||||
|
||||
@@ -71,9 +71,10 @@ class Buffer;
|
||||
Vulkan.reInit();
|
||||
*/
|
||||
|
||||
class Vulkan : public AsyncObject {
|
||||
class Vulkan {
|
||||
private:
|
||||
Logger LOG = "Vulkan";
|
||||
asio::io_context &IOC;
|
||||
|
||||
struct vkInstanceLayer {
|
||||
std::string LayerName = "nullptr", Description = "nullptr";
|
||||
|
||||
Reference in New Issue
Block a user