C#多线程指纹比对
由于项目的需要,要进行指纹验证,调用指纹仪厂商的api,进行指纹比对,测试发现1000枚指纹的比对快则需要200毫秒,满则需要1秒多,对于10w级以上的指纹数据比对显然力不从心。这是需要考虑C#多线程了,把10w枚指纹分割成100组,每组1000枚指纹,用100个线程去同时进行比对,只有一个线程比对成功则返回结果。
这里有几个问题要解决
1、 给线程函数传参
2、 如何确定其他线程是否比对成功
3、 如何判断所有线程执行完
问题1的解决
for (inti = 1; i <= total; i++) //开启多线程指纹对比
{
MatchFingerDelegatedele = new MatchFingerDelegate(MatchFingerThread);
dele.BeginInvoke(i, null, null);