using System; using System.Threading; using System.Drawing; // 或者使用其他图像处理库 public class CameraThread { private readonly int _cameraId; private readonly Action _onImageCaptured; private Thread _thread; private bool _running; public CameraThread(int cameraId, Action onImageCaptured) { _cameraId = cameraId; _onImageCaptured = onImageCaptured; _running = false; } public void Start() { _running = true; _thread = new Thread(Run); _thread.Start(); } public void Stop() { _running = false; _thread?.Join(); } private void Run() { while (_running) { // 模拟图像捕获 Bitmap image = CaptureImageFromCamera(_cameraId); _onImageCaptured?.Invoke(image); // 休眠一段时间,模拟捕获间隔 Thread.Sleep(1000); } } private Bitmap CaptureImageFromCamera(int cameraId) { // 这里添加实际的图像捕获代码 // 例如,从相机 SDK 捕获图像并返回 return new Bitmap(640, 480); // 模拟图像 } }