zoukankan      html  css  js  c++  java
  • 记一次U8的插件开发

    在u8上开发一个winform的插件用来实现不同账套之间的单据协同,使用的方法是用存储过程走数据库。因为原账套的数据量会很大,如果直接在插件上用单线程传输,那肯定会造成传输过程,u8卡死的。一种方法是在插件上使用多线程传输,这种方法我没试过,因为这种传输始终依赖了u8客户端,如果传输时间过长,u8客户端一直闲置起,那u8会出现倒计时自动关闭的问题,再者,也不知道u8支持插件上多线程不。

    所以我用了另一种方法,另外专门写一个控制台的程序,专门用于数据的传输,而且在控制台使用多线程比起在winform上使用多线程要来得方便些,并且在传输过程中也不会让u8卡顿,u8关闭了,这个控制台在运行,就不会影响传输。

    我开始做的时候,是使用Process.Start(path+"XXX.exe",data),但这样做,在正式环境测试时,发现 data如果超过了windows系统允许的最大文件长度256个字符,就会报异常,所以这种方式我不得不放弃。

    不过我想到一个办法,那就是把data写到一个临时文件,每次传输的时候,更新这个txt文件,控制台程序就去读这个文件,这种办法就解决了我的问题。

    不过这个插件还有另外一个问题,用datagridview绑定数据时,数据一多就卡,因为是一次查询显示几千条。如果不用分页的办法的话,也没试过用多线程来渲染列表,等下次做的时候试试。

  • 相关阅读:
    初探linux子系统集之led子系统(一)
    金融大数据分析从认知到实践(第1辑)(套装共3册)
    Blender权威指南
    零基础学Python
    中文版Photoshop CC图像处理与设计
    21天学通C++(第4版)
    Python应用开发实战
    电脑办公实战从入门到精通(超值版)
    Windows 10从新手到高手
    21天学通C语言(第7版)
  • 原文地址:https://www.cnblogs.com/HelloQLQ/p/14696465.html
Copyright © 2011-2022 走看看