【发布时间】:2011-11-10 17:01:45
【问题描述】:
我有一个 HttpListener,它为收到的每个请求启动一个 winform 并返回一个表示图像的字节数组。一旦执行从请求的查询字符串中解析的一些命令,该图像就会由 winform 拍摄。任何 winform 都在不同的线程中执行。
在winform完成它的工作之后,它会拿出一个字节数组作为响应,然后它的线程就死了,如果同一个用户发出新请求,就会创建一个新线程(带有新的winform)。
我猜我是否可以维护每个线程,使用每个用户的 ID(IP 地址、GUID、cookie),所以我不必每次都重新创建 winform,同时 winform 将保持以前的状态。
有可能吗?或者我必须转向另一个方向或设计?
【问题讨论】:
-
为什么在服务器应用程序中使用 WinForms?
-
这是我项目的一个约束,每个winform,使用OpenGL,在屏幕上绘制一些东西被捕获并返回给客户端。
-
@JasonMenny - 你实际上并不需要演示界面;在后台缓冲区中执行所有操作并将其渲染为图像。
标签: c# .net multithreading httplistener