现有个小程序,功能是从串口接收数据,然后对数据进行处理保存并使用PrintDocument类将其打印,原来是先接收然后打印,现要求改为边接受边打印,比如接收一行打印一行,现在有两个问题
1。可以边接收边打印么?我意思是打印机会等待么
2。如果可以边接收边打印那么我是将其放在一个线程里面速度会快点呢还是将接收和打印分为两个线程速度会快点呢?因为主机性能很差,类似于单片机

解决方案 »

  1.   

    亏你想得出来,打印机属于共享资源,接收完了再打印,不要一直占着共享资源;
      

  2.   

    可以边接收变打印,多线程操作
      

  3.   

    第一个问题我不知道,不过感觉不是很靠谱。
    第二个问题,第一个问题不能实现就没有第二个问题了。多线程肯定比单线程要快。
      

  4.   

    额……,这个不是我想出来的,是领导要求的,应该打印机就只为这一个程序服务吧
      

  5.   

    原来的程序里面是为打印机单独开了个线程的(先接收后打印),但是接收数据和打印速度都很慢,后来才发现是因为这个线程一直开着的原因,把这个线程去掉速度提高了四五倍,是不是因为线程太多的原因呢,现在已经有了三个子线程了
      

  6.   

    这个问题通常是用两个线程,因打印机是共享资源,这个线程还要同步
      

  7.   

    请教一个问题,使用两个线程同步跟使用一个线程的区别是什么呢