请教关于图像显示的问题

我编写的是一个采集PCI卡数据,并把数据显示为图像同时存储的应用程序。
硬件不停的往PCI卡发送数据。由我来决定什么时候采集这些数据。
我的思路是:
1.按下一个按钮,调用callback函数。
2.在函数内创建3个线程,分别用于数据的采集,图像的显示,数据的存储;3个线程通过消息传递的方式来达到协调工作。
我的方法是可行的吗?应该注意些什么呢?

还有,我可以通过重复使用PhDrawPhImage()函数来显示我所采集到的图像吗?