今天終於搞明白了下面這段代碼,我的理解就是:委託,匿名方法(lambda表達式寫法):
recordInterval = Configs.CameraRecordLength;//獲取間隔時長
CreateVideo();
RecordTime();
if (_VedioAndController == null)
_VedioAndController = new IpCameraHelper(Configs.CameraIP, "admin", "",
//注意這個地方:Action帶一個參數的匿名方法,Lambda表達式寫法
new Action<ImageEventArgs>((arg) =>
{
var bitmap = arg.FrameReadyEventArgs.BitmapImage;
img.Source = bitmap;
if (writer != null && writer.IsOpen)
{
writer.WriteVideoFrame(Function.BitmapImage2Bitmap(bitmap));//將圖像寫入視頻
}
}));
_VedioAndController.StartProcessing();
System.Func委託除了可以返回結果以外,它與Action委託完全相同。
關於委託,這裏推薦一篇好文:http://www.cnblogs.com/r01cn/archive/2012/11/30/2795977.html