程序跑的时间长就发生中断。
启动任务管理器,选择“进程”选项卡,查看程序的内存。
发现程序运行的过程中内存不断增长。
那么原因可能是运行过程中不断地分配了新的内存而没有释放。
查找的方法是注释代码,然后看内存是不是还在增长,一直到定位出问题代码。
然后就仔细查看呗。
发现OpenCV中的cvCreateImage和cvLoadImage都会分配内存,如果把它们放在循环中不停调用内存就会不停增长,所以用完之后得立即调用cvReleaseImage。
查找并处理完成后就发现程序跑的过程中内存一直稳定在一个小波动范围之内,而不是之前的持续增长了。