我正在用 C# 编写一个应用程序,它将编译和执行用 C、C++ 或 Java 编写的外部代码。在这方面,我有几个问题要问,以下是我迄今为止所做的研究:
- 将有一个服务器托管应用程序,该应用程序将接收用户提交的代码请求。这些请求将在特定套接字上发送。
- 将有一个接收者线程将所有此类请求排入队列。
- 会有消费者线程从队列中出列并编译和执行程序(提交的代码)。在编译和执行时,将从命令行使用适当的编译器和加载器,它们将作为 C# 应用程序的进程执行。
- 到目前为止,可以假设沙盒、不公开服务器访问等安全问题已经/将在以后考虑。我的主要关注点是这个执行逻辑。
我有以下问题要问:
- 有没有更好的方法来做到这一点/我做错了什么?