using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using System.IO.MemoryMappedFiles; namespace Sog.IO { //通过共享命令发送服务器指令,每个服务器ID一个 //服务器管理通过这个,比如 stop, reload, 服务器管理指令和gm指令的支持 //方法是游戏正常进程(SogLoader)启动会创建,其他模式启动的SogLoader通过写操作实现进程间通信 //实现支持跨平台的方法 //进程间通信的指令使用字符串,方便扩展和其他工具集成使用 // 4byte[length] strcommand strparam1 strparam2 ... // 读写操作不加锁,所以暂时只支持同时存在一条指令,后期可优化扩展 public interface IShareCommand { //释放资源 void Close(); //删除文件 void DeleteFile(); //App启动时创建 void Create(); //辅助模式则attach bool Attach(); bool WriteCommand(string strCommand); bool WriteAck(string strAck); string ReadCommand(); string ReadCommandAck(); } }