精易论坛

标题: 线程为何无法使用快速字节集? [打印本页]

作者: 冰棍好烫啊    时间: 2020-5-16 13:31
标题: 线程为何无法使用快速字节集?


许可证什么的都试过了 , 这样执行直接崩溃 .

但是不用线程就没事, 问一下该怎么办?

作者: 梦寻简单    时间: 2020-5-16 13:48
好像不崩溃啊。是指直接结束运行了么。如果是,启动线程之后加个延迟就好。
作者: 冰棍好烫啊    时间: 2020-5-16 13:57
梦寻简单 发表于 2020-5-16 13:48
好像不崩溃啊。是指直接结束运行了么。如果是,启动线程之后加个延迟就好。

不是 . 我运行之后程序直接卡死然后结束 , 关闭不调试输出 .
作者: 冰棍好烫啊    时间: 2020-5-16 13:58
梦寻简单 发表于 2020-5-16 13:48
好像不崩溃啊。是指直接结束运行了么。如果是,启动线程之后加个延迟就好。

难道是我电脑的问题吗??
作者: ttioo7    时间: 2020-5-16 14:56
.版本 2

线程_初始化COM库 ()
线程_取消COM库 ()

分别放在线程的开始和结束
另外建议你去看下许可证是干什么的
作者: 冰棍好烫啊    时间: 2020-5-16 14:57
ttioo7 发表于 2020-5-16 14:56
.版本 2

线程_初始化COM库 ()

试过了, 没用. 还是崩溃
作者: 大司命    时间: 2020-5-16 16:38

调用标签反馈事件试试~
作者: dangerace    时间: 2021-4-27 14:19
我亲身测试过,把快速字节集对象放到线程中,崩倒是没崩,但仅第一次运行线程是正常的,(不关闭程序,不关掉主进程)第二次就不正常了。反复测试各种办法都不行,只能说线程中不要使用快速字节集了。
作者: 正鑫软件开发    时间: 2021-4-27 17:08
dangerace 发表于 2021-4-27 14:19
我亲身测试过,把快速字节集对象放到线程中,崩倒是没崩,但仅第一次运行线程是正常的,(不关闭程序,不关 ...

?????我经常这么用呀
也没事呀?
我还专门编译出去试了下也没问题呀
  
子程序名返回值类型公开备 注
_按钮1_被单击  
启动线程 (&cc, , )
子程序名返回值类型公开备 注
cc  
变量名类 型静态数组备 注
K快速字节集对象 
K.添加 (到文本 (“aaaaa”))
编辑框1.加入文本 (到文本 (K.取字节集 (, )) + #换行符 )


i支持库列表   支持库注释   
EThread多线程支持库
commobj通用对象支持库


作者: dangerace    时间: 2021-4-27 20:29
正鑫软件开发 发表于 2021-4-27 17:08
?????我经常这么用呀
也没事呀?
我还专门编译出去试了下也没问题呀[e=2].版本 2

我在单位因为没有狗,所以只能是运行调试,确实不行。但是晚上回家用狗进行编译后,貌似又正常了。我再多做一些测试,确认一下。感谢您的回复。希望继续讨论。
作者: 凌哥    时间: 2021-4-27 20:43
启动线程 下面加一行  延时(200) 问题解决
作者: 正鑫软件开发    时间: 2021-4-27 22:09
dangerace 发表于 2021-4-27 20:29
我在单位因为没有狗,所以只能是运行调试,确实不行。但是晚上回家用狗进行编译后,貌似又正常了。我再多 ...

惭愧,我也没狗```
但是``因为经常接单,经常这么写代码,也没听见客户有啥反馈,所以感觉```
你再测试下,真有问题的话下次还真不敢这么写了``
作者: dangerace    时间: 2021-4-28 21:06
正鑫软件开发 发表于 2021-4-27 22:09
惭愧,我也没狗```
但是``因为经常接单,经常这么写代码,也没听见客户有啥反馈,所以感觉```
你再测试下,真 ...

认真进行了测试,发现确实存在如我所说的问题:
1、在调试模式下,在线程中运行了一次“快速字节集.分割字节集()”方法后,(不中止进程)再次运行该进程就没有任何响应了。
2、完全一致的代码,只要编译一下,就不存在上述问题....

我用gif录了一个视频,不知道能不能放上来:



作者: 凌哥    时间: 2021-4-30 13:18
@dangerace  我模块提供的快速字节集可以搞定
作者: dangerace    时间: 2021-4-30 14:59
凌哥 发表于 2021-4-30 13:18
@dangerace  我模块提供的快速字节集可以搞定

感谢提供建议,不过用您的模块(v3.1.1.20210128)试了一下,不说线程表现怎么样,只说处理速度,相比官方的快速字节集,大概慢了有10倍。
这是我的代码,上面的按钮1,是官方快速字节集对象代码,下面的是您的,测试文件是一个30m/200w行的csv文件。分割字节集这个方法,您的模块耗时50余秒,而官方的只需要4-5秒。
请您再帮我瞅瞅,是不是哪里用的不对。

作者: 凌哥    时间: 2021-4-30 17:24
dangerace 发表于 2021-4-30 14:59
感谢提供建议,不过用您的模块(v3.1.1.20210128)试了一下,不说线程表现怎么样,只说处理速度,相比官 ...

这个是我分割字节集的写法没优化.
作者: 凌哥    时间: 2021-4-30 17:37
dangerace 发表于 2021-4-30 14:59
感谢提供建议,不过用您的模块(v3.1.1.20210128)试了一下,不说线程表现怎么样,只说处理速度,相比官 ...

我刚刚改进了一下内存分配的地方



作者: 凌哥    时间: 2021-4-30 17:46
dangerace 发表于 2021-4-30 14:59
感谢提供建议,不过用您的模块(v3.1.1.20210128)试了一下,不说线程表现怎么样,只说处理速度,相比官 ...

二次优化后:

作者: dangerace    时间: 2021-4-30 20:17
凌哥 发表于 2021-4-30 17:46
二次优化后:

那么问题来了,这么好的代码,应该上哪里才能找得到呢?
作者: 凌哥    时间: 2021-4-30 20:34
dangerace 发表于 2021-4-30 20:17
那么问题来了,这么好的代码,应该上哪里才能找得到呢?

我模块从3.1.1版本后,就再也不免费对外发布了
作者: dangerace    时间: 2021-4-30 21:20
凌哥 发表于 2021-4-30 20:34
我模块从3.1.1版本后,就再也不免费对外发布了

好吧,再见!
作者: 火狐狸软件    时间: 2024-7-7 21:18
很明显 启动线程之后 程序直接执行完毕退出了啊,线程的代码还没有执行或没有执行完毕就退出了,, 你启动线程之后   延迟个100秒试试 或者 无限循环  不要让程序退..




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4