playwavsound()这个函数是可以播放自己录制的语音,但是优先级太差了,一条语音没播放完毕,就被另一条覆盖了!
一分钟内如果出现了多个符合条件的股票,播放语音时,都是前面没播放完,就被后面的覆盖了。
至少设置一个优先级比较高的语音播放函数,这个函数没播放完毕,主程序不往下运行。
有没有感同身受的伙伴!!!!!
ps:其实只要一个playwavsound2()也可以,它作为onbar里面的一个程序,能阻碍下面程序的运行,它运行结束下面的程序再顺序执行。
ps2:有人会说,这样很不高效,但是这种需求相信不止一个人遇到过,一定是量化+主观相结合的关键痛点之一!喜欢高效那就用原来的playwavsound()就可以了,对吧。拥有两种选择才可以满足更多不同的需求!
自己阻塞一下线程不就行了
怎么阻塞呢
什么思路啊?
就像重构SetTriggerBarClose机制一样
自己写就两三行代码的事
Play之后
记录时间
while(当前时间 vs 记录时间 < 把所有声音文件统一播报秒数)
后续代码之前
很多问题都是这么简单😂
我以前好几个帖子回复
发过代码
关键是思路要打开。。。
好像需要特别精细的控制
好像需要特别精细的控制
不需要
不要死循环就行
思路打开
但是别想复杂了
都是小问题
😁
用你说的方法实现了阻塞,每次playwavsound保证4秒钟,完美😁
目前没有这种类型
网友提供的办法,利用whlie和时间条件,可以实现目的
收到建议了,会转发给研发人员
不过以个 人 身 份评论一句,这种需求一般优先级很低,不会很快就做上。
off-record
第一,技术难度很麻烦,不是简单做一个函数的事,要更改很底层的运行机制了。暂停等执行结果完再继续这种机制很新,而且挺难做的。
第二,这个函数本身只是一个辅助功能,重要性很低,写自动化策略都是追求机器自动处理,现在需要语音提醒手动操作,本身就不符合产品的定位。
一个做起来很难,看起来却没什么收益的功能,如果我是公司产品经理,我不会把这个开发需求定很优先。
当然,这仅仅是我个人看法,用户建议我是会转达的,具体怎么做,还是以公司产品设计定夺。
PlayWavSound()是只要触发就算执行结束对吧。
只需要增加一个,PlayWavSound2()播放完毕才算执行结束。
声音的播放也算程序的一部分,让整个程序顺序执行就可以了。
知道什么意思。就是执行到playwavsound先不要继续执行后面的代码,等到完全播放完音频文件再执行后面的代码
网友提供的办法,利用whlie和时间条件,可以实现目的
。。。你觉得好用就行
新版目前没有dialog了
啊 实操还在待办事项里......就下线了