开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 213|回复: 7
收起左侧

[精币悬赏] 网络音乐播放,窗口无故卡死消失,求大佬帮忙分析下原因

[复制链接]
结帖率:0% (0/1)
发表于 2024-12-22 02:36:20 | 显示全部楼层 |阅读模式   四川省德阳市
50精币
各位大佬,小弟刚学习易语言不久,心血来潮自己编写了一个网络音乐爬取的播放器程序,在测试中发现播放网络音乐的时候会出现无规律的窗口消失现象。
自己分析了多种情况,并且做过交叉测试,情况如下:
1.使用该播放器,播放本地音乐,播放一个晚上都不会出现问题,因此排除了MP3播放板块源码的故障。
2.接通网络之后,本人还做了一个5秒钟请求一次音乐网站的url访问请求,作为程序服务器联通情况的反馈程序,在没有播放网络音乐的情况下,开着程序挂了两个消失也未曾出现问题。
3.目前已知问题出在播放网络音乐这个板块中,已经做了很多观察测试:播放过程中,测试过关闭网络连接几分钟后再连接网络,程序不会崩溃,还能接着请求播放;尝试过当前曲目播放开始后立马断掉网络连接,程序自动播放或者手动进度跳转播放也没有问题,能播放完目前正在播放的曲目,证明曲目播放请求成功后会将音乐文件缓存至本地内存中;在播放网络音乐过程中,也监测过任务管理器资源占用情况,该程序占用内存一直稳定在70000KB左右,没有内存占用过大的问题。
4.窗口消失情况:经过观察窗口消失一般是播放半小时左右,也出现过播放十分钟内窗口消失的情况(很少,就一次),消失前播放的音乐会停止一秒左右,然后窗口突然消失。任务管理器中程序进程有时候会停留数十秒,有时候会跟着窗口一起结束掉。
求大佬帮忙分析分析到底是哪里出了问题,下面附上源码(模块使用是精易模块10.3.0),请求各位大神帮忙看看,小弟感激不尽!

在线音乐播放.7z

675.43 KB, 下载次数: 12, 下载积分: 精币 -1 枚

程序源码

崩溃瞬间录屏.7z

143.83 KB, 下载次数: 1, 下载积分: 精币 -1 枚

崩溃瞬间现象

结帖率:0% (0/1)

签到天数: 1 天

 楼主| 发表于 2024-12-22 02:38:13 | 显示全部楼层   四川省德阳市
自己先顶一波,希望能有大神看到帮忙解决下这个问题,提前拜谢大神!!!
回复

使用道具 举报

结帖率:93% (14/15)

签到天数: 19 天

发表于 2024-12-22 07:28:34 | 显示全部楼层   **
源码打开直接报错闪退,看到EX头疼
回复

使用道具 举报

结帖率:100% (3/3)

签到天数: 19 天

发表于 2024-12-22 10:30:38 | 显示全部楼层   福建省莆田市
那就下载下来再播放

补充内容 (2024-12-22 10:31):
网页访问->写到文件->播放
回复

使用道具 举报

结帖率:86% (18/21)

签到天数: 15 天

发表于 2024-12-22 13:03:15 | 显示全部楼层   湖北省鄂州市
最稳妥的办法就是卸载掉exui,只要调用exui的功能,莫名的BUG就会出现,哪怕你用组件提交
回复

使用道具 举报

结帖率:100% (1/1)

签到天数: 11 天

发表于 2024-12-22 15:16:33 | 显示全部楼层   湖北省黄石市
时钟_播放进度控制  这个时钟调用音乐_进度()的频率太高了;改成播放的时候取MP3时长,时钟_播放进度  周期事件里面只写进度条增加就行了
回复

使用道具 举报

结帖率:0% (0/1)

签到天数: 1 天

 楼主| 发表于 2024-12-22 21:48:07 | 显示全部楼层   四川省成都市
lzht88 发表于 2024-12-22 13:03
最稳妥的办法就是卸载掉exui,只要调用exui的功能,莫名的BUG就会出现,哪怕你用组件提交 ...

没有用exui的时候一样的,最开始写的就没有用exui。谢谢大佬热心提醒
回复

使用道具 举报

结帖率:0% (0/1)

签到天数: 1 天

 楼主| 发表于 2024-12-23 00:16:35 | 显示全部楼层   四川省成都市
月下美孤 发表于 2024-12-22 15:16
时钟_播放进度控制  这个时钟调用音乐_进度()的频率太高了;改成播放的时候取MP3时长,时钟_播放进度  周 ...
  
子程序名返回值类型公开备 注
_时钟_播放进度控制_周期事件  
判断 (hk条_进度.位置 = 取整 (MP3毫秒数 ÷ 1000))
时钟_播放进度控制.时钟周期 = 0
hk条_进度.位置 = 0
判断 (到整数 (MP3播放标识) = 超列_网络列表.取项目数量 () - 1)
超列_网络列表.现行选中项 = 0
超列_网络列表.现行选中项 = 到整数 (MP3播放标识) + 1

MP3播放标识 = “”
按钮_播放.选中 = 假
判断 (搜索列表更新)
超列_网络列表.现行选中项 = -1
超列_网络列表.获取焦点 ()
开始播放MP3 ()
按钮_播放.选中 = 真

hk条_进度.位置 = hk条_进度.位置 + 1


i支持库列表   支持库注释   
ExuiKrnln(未知支持库)





这个时钟周期时间改成进度条秒进控制,还是会崩溃,感觉应该不是这个的原因。因为之前读取进度的参数是播放标识,其实是读取的本地内存数据,不是网络数据。我写的本地播放也是这样写的没有崩溃。大佬还有其他法子吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表