注册 登录
编程论坛 VB6论坛

vb双进程问题的求助!

suzhanpeng 发布于 2018-12-19 08:46, 2448 次点击
要求
进程1:不停的给一个二维数组赋值
进程2:根据二维数组值的变化,取出这个变化的值
求助进程2的思路,怎么做二维数组变化的事件?
8 回复
#2
ZHRXJR2018-12-19 09:52
1、不停的给一个二维数组赋值,有时间限制吗?如果没有时间限制,就是一种死过程,而且这种赋值速度极短,与微机的运行速率有关。
2、根据二维数组值的变化,取出这个变化的值,与上面所述同理,取出差值不是特别困难,但显示差值一闪而过,能够看清楚吗?
#3
wds12018-12-19 10:23
实现的关键与你赋值的频率和显示的频率有关。

1、如果赋值频率为每秒一次,赋值时间大约为100ms
2、检测频率也是每秒一次,检测时间大约为100ms

那么用timer就可以实现。


#4
suzhanpeng2018-12-19 12:04
回复 3楼 wds1 和 2楼 ZHRXJR
赋值过程是通过事件得到的,时间不能确定。
因为前面要经过复杂的事件和判断处理得到,赋值的过程程序运行内存很大时间也很长,所以我想把取值后的处理单独一个线程运行。
#5
风吹过b2018-12-19 12:43
这种的要求最难理解
我的理解是一个拼命计算,一个定时去取数据
取数据的不管当前是否计算完成,只管取现有的数据。

简单点就是定时器
1,计算过程中多写 DoEvents 。
2,定时器代码运行要短。

----
复杂就多线程,
自己百度一下例子
主线程 界面
子线程1,计算
子线程2,计时,取数。
需要使用 临界 ,防止内存冲突。

#6
ZHRXJR2018-12-19 12:44
如果是使用按钮给二维数组赋值,就不存在时间问题,因为时间是由用户自己控制的,如图:
只有本站会员才能查看附件,请 登录
#7
suzhanpeng2018-12-20 08:11
回复 6楼 ZHRXJR
按钮事件起不到自动的作用。
#8
suzhanpeng2018-12-20 08:16
回复 5楼 风吹过b
就是想用用多线程
第二个线程取出数组中改变的值和新加入的值进行处理,问题是时间事件有缺陷,有没有更好的方法来处理它?
第一进程中给数组赋值和改变值得过程中执行一个自定义事件,把这个自定义事件放到第二个进行中进行处理可以吗?

[此贴子已经被作者于2018-12-20 08:24编辑过]

#9
ZHRXJR2018-12-20 12:03
回复 suzhanpeng:
你在4楼说:
 “赋值过程是通过事件得到的,时间不能确定
因为前面要经过复杂的事件和判断处理得到,赋值的过程程序运行内存很大时间也很长,所以我想把取值后的处理单独一个线程运行。”
又在7楼说:
“按钮事件起不到自动的作用。”

按钮事件不是事件吗?要自动,又回到时间问题了

因此你能不能说说,1、二维数组的维数、数据类型?2、对二维数组的赋值方法,是文本框输入还是其他方式输入?3、你的意图需要怎么实现自动的?
进一步说你的第一个进程“不停的给一个二维数组赋值”,是自动赋值还是手动赋值?不停是什么意思?经过一段时间还是其他?
你的第二个进程“根据二维数组值的变化,取出这个变化的值,求助进程2的思路,怎么做二维数组变化的事件?”如果是自动赋值,实际上非常容易实现,如果是手动赋值,必须在二维数组的值全部完成后才能实现。
必须将你的意图、数组等等说清楚,别人才能帮你!!不然一头雾水!!
1