粉丝2855获赞5169

哈喽,大家好,今天我们来给大家讲一下一元大漠插件多现成操作介绍。 好,我们直接打开我们多线层操作的课件,这里呢我已经写好了一个多线多线层操作的脚本,用来给大家介绍一下, 那什么是多线层操作呢?我用通俗的话来讲就是同时操作 两个窗口啊,做相同的操作,或者是不一样的操作,对不对?那对于我们大漠插件来说,如果我们用大漠插件来控制 窗多个窗口,就好比模拟器窗口来说吧,我们可以同时啊用大漠插件来同时操操作多个 模拟器窗口,来全自动的运行我们的脚本,对不对?首先当然是要获取多个窗口的窗口锯柄啊,这里呢,我已经提前写好了啊,提前写好获取窗个啊多个窗口锯柄以后, 这里我给大家写了一个简单的脚本功能,就是打开雷电的游戏中心,对不对?我们同时操作多个窗口,打开我们的雷电游戏中心,好,这个时候我点击一下打开雷电游戏中心, 好,大家看到了没有?这个时候呢,他多个窗口呢,就同时打开了雷电游戏中心啊,就是这么简单啊,可以大家就是这样理解啊, 好,这个时候呢啊,我们的脚本还在运行当中啊,大家看到了啊,只有 只要我们啊,只要我们一关闭这个雷电游戏中心,他就会全自动的去打开,对不对?那可以多个窗口做相同的操作,也可以多个窗口做不一样的操作,比如说啊,这个窗口他已经打开了雷电游戏中心了,但是 另一个窗口他没有打开,这个时候呢,他找到了雷电游戏中心,他还会啊照常的给我们打开,所以用通俗的话简单的来介绍多现场操作就是这样啊,给多个窗口做相同的操作,或者是不一样的操作。那由于 大漠插件的多线层操作呢?啊,讲起来就比较复杂,涉及到很多复杂的东西,所以在新手入门课程里,我就不给大家介绍了。那大漠插件的多线层操作的实战教程呢, 我已经录制好了,给我啊,给我专门找我学习的学员,我会让他们学习。有很多新手学员啊,都想找我学习这些大抹插件的这些多现场操作的课程呢,我已经录制好了,后面新啊新手学员直接问我要视频教程来学习就可以,因为 啊涉及到这个多线程操作,然后全自动脚本的话,有很多复杂的东西,所以不方便在新手入门课程里面讲解。好。那 一元大墨插件的多线层操作介绍呢啊,我就已经给大家讲到这里,这里呢,那一元大墨插件的新手入门的这一篇呢,就已经是完结了。好了,那这期视频就到这里。

自己来讲一下现成的结构,我先把这个现成数量手动固定,写上为两个吧, 然后把它弄成局中好看一点,然后双击这个启动,我添加一个现成,我叫他主控吧, 现成还没有添加那个模块,我添加一个模块, 这线层是模块里面的命令, 现成初始化 休闲裤,现成取消休闲裤,这个是现成的基本控制,在这里 写启动,现成启动,启启动现成现成启动, 然后他的参数有两个,我记得是可以写两个,三处可以传输个整数过去,我传个挨过去,然后指针的话就是主控, 我们是多现成,所以继续继续循环守 处理时间。 然后这里要写现成数, 这里是 i, 因为我们船上船的 i, 所以自己写一个变量进去,这个线程数就等于 编辑框线整数点内容,因为这个是文本型,要把它转换成整数剪刀整数, 这样子结构就出来了, 我再添加一个启动计算器, 这里我就可以一直添加命令就可以了,这个线程就可以运行了。暂时在这里输出,四川的一个挨过来要写进来整数形 调试输出,调试文本,我把这个 i 传进来,在下面这里输出,看一下这现场现成是不是正常在运行, 启动他这里一二,如果是要多多个的话,可以启动十个现成 或者更多都可以,那么现成的结构就这样子。




大家好,咱们今天呢来讲这个多线程模拟啊,也就是啊咱们电脑上的群控方面的一些操作啊,那么首先呢咱们要先来了解一下这个群控的简单介绍啊,其实呢 啊,咱们这节课呢也只是借着群物这个意思啊,因为在市面上的群控当中啊,他不是呃咱们所讲的,而是啊通过电脑来控制手机的那种群控,对吧?啊,咱们只不过是借着这两个词啊,这两个词呢是 他的意思呢是什么呢?啊?就是一个程序啊,控制多个物体或者是控制多个程序,就这个样子,这就是全控,包括你看到的 电脑上,你看到控制一堆游戏,控制控制一堆模拟器,那也算成功啊,那么咱们这节课呢啊,多线生模拟, 因为这个多县城模拟呢,你要操作的东西啊,他并不是单个,咱们之前说过了啊,咱们的这个模拟操作的话是叫做啊多进城,多进多进城多县城,对吧?就为什么说是多进城多县城呢? 因为你目标程序啊,就是你原来你要比如说要操作这个模拟器,对吧?啊, 但是如果是咱模拟来做的话,那就必须得打开好几个模拟进行操作,明白吧?啊?所以就多进程多进程啊,那么这样的话啊,那就会造成啊,有多个物体有多个程序, 对吧?你这操作一个模拟器就行了,但是现在搞这个多线层的话,你就得操作好几个,对吧?啊?这个是为什么呢?那为什么模拟的多线层必须得开好几个呢? 啊?这是为什么呢?首先咱就假如说啊,你需要勾线上的部分啊,是这个啊,什么呢?是这个?嗯, 注册账号,行吧?啊?咱就假如啊,你要多现成部分注册账号啊,那么如果你用协议来做,那是发包的事情,对吧?但是咱们呢,用模拟来做的话,那就是,呃,鼠标什么操作,对吧?咱就假如说咱打开一下 qq 啊, 给大家瞅一下注册账号,对吧? 那么如果是啊,这个,呃,用这个模拟来做,对吧?这一个浏览器啊,这一个页面是不是每次就能做出一个?你能一次性做出很多吗?能吗?肯定不能,对吧?那你说就这一个页面啊, 就假如你有很多个鼠标,很多的键盘,你怎么控制这一个页面来注册多个账号,有没有办法?是不是没有办法,对吧?啊?那么现在想要注册多个账号怎么办呢? 打开多个页面,怎么你就打开多个浏览器啊,再打开多个浏览器,那么 都是问题当中啊,再去注册,那么这个样子啊,现在有两个了,对吧?那么你说可不可以来进行搞啊?啊?左边注册一个号,右边注册一个号,对不对 啊?那么这样的话,是不是中间是不是模拟的?对,模拟的中线上,对吧?但是呢,他是多进程的,因为打开了两个浏览器, 对不对啊?这是两个软件啊,你同时操作模拟器也是一样的啊,因为你这你要注册两个账号,必须只能操作这一个页面,但是这一个页面呢?你两能不能两个同时操作这一个页面?肯定不能, 对吧?这个注册那个号,这,这不就乱了吗?对吧?所以说要分开啊,分开,那么这个也成了道理。 说的道理啊,要分开啊,那么怎么做呢?就咱们来说啊,一个程序,首先是一个程序啊,然后呢多条线程 啊,就是好,就是多线上啊,然后呢每一个线上对应一个窗口来进行模拟操作啊,也就是这个样子,咱们用记事本来说啊, 第一个线程控制这个啊,第二个线程控制这个啊,第三个线程控制这个, 这个样子,知道吧?其实他们在进行注册也在这个内部啊,假如因为咱们用机器本来代替吗?用其他的操作的话啊,没有什么好的东西来操作啊,知道吧? 那么呢咱们来看一下图片啊,其实也非常容易理解啊,首先呢一个主程序啊,在这个主程序下面他开了三个线程,然后这三个线程每一个线程对应一个窗口啊,就这个样子就可以了, 知道吧?啊?非常简单啊,非常简单,当然啊啊,你在做起来的时候啊,你就正在写一些软件的时候啊,比如说啊,比如说啊,咱就一摸, 嗯,以这个模拟器来说可以吧?啊?模拟器来说,然后模拟器呢?你总共有十个模拟器,然后呢每次啊,每次只操作两个模拟器,那就也就是两个线条,两个线条把这个十个模拟器连留个遍,同时操作两个啊,只要十个操作完, 这样子啊,相当于这个样子,那么到时候又要又要怎么搞呢啊?就是说在操作这些时候的时候啊,那么需要用到的知识叫做现成池,那么现成池又是什么呢?咱们之前没说,对吧?啊?那么咱们可以打开百度搜索页现成池看是怎么的介绍 现成池其实呢也就是一个现成的管理啊,现成的管理就是对你多现成一些东西的管理啊, 县城值啊,是一种多县城的处理形式啊,就是也就是在这个,呃,管理这些这个县城,知道吧?因为管理这个县城啊,因为你正常来做的话,你需要把所有的处理代码都得写一遍,对吧?那么 如果用县城池的话,县城池是已经封装好或者是封装好吧?就是啊,你也可以自己手动写县城池,但是有市面上有县城啊,有弄好的一个县城池的模块,那么你可以直接抢这种模块,就不用自己再去 自己再去封装宣传池,因为你自己去做操作的时候你可能考虑不了那么多情况,对吧?啊?那么如果用那些比较好的文化,就比如说这个鱼刺啊,我记得鱼刺有个宣传池的 啊,那么用那那种的话,他可能在那种处理的比较好,知道吧?啊?处理的比较好啊,就是说一些 bug 啊,你自己写的话可能没有考虑到,但是啊到时候出现了,对吧?但是人人家已经弄好了啊,人已经弄好了 这种啊,那么咱们的话啊,咱们可能 v c 认识啊,咱们只是给你说一下啊, 首先呢我现在打开那个啥啊,我打开之前一节课的代码,这个排列和关闭啊这节课的代码, 因为咱们还是需要一下这里的操作的,需要一下这里操作的,咱就假设三个窗口吧,假设三个窗口, 一个两个,三个, ok, 假设三个,咱们往里边给他写内容啊,往里边给他把这个里边写内容, ok, 那么呢咱们在这里再单纯的创建一个 呃按钮啊,按钮的话就是开始啊,由于开始的 开始已经 是开始多变小, 那么开始多线程呢啊,咱们首先呢先要有一个线程程序,线程的此程序 右键新子新子程序啊,那么在这里的话就叫做线程线程子程序,好吧。啊,返回值不需要,因为装的线程子程序是不需要返回值,因为这个的话啊 返回你也接收不到啊,对吧?啊,那么需要一个参数,什么参数呢? 首先你要知道这个线上子程序里边需要做什么操作,往啊往这个计时 日本编辑框上啊,输入内容,是不是把这个记事本的这个编辑框上面输入内容啊,那么给记事本编辑框上面输入内容,咱们现在了解要怎么输,要怎么输入,那么其实特别简单啊。啊, 咱们呢不是采用这个真正的模拟来做,不是说鼠标键盘还是什么呢?啊,有聚饼方面的操作就是窗口啊,只有空间内容, 那么这个制空间内容呢是什么意思呢?就是说你只要知道这个指定空间的这个句柄啊,那么就可以把这个句柄试当中啊记上一个新的内容上去,明白吧?


由于我是采用锯柄来操作的,那自己解救要采集一下锯柄,先看一下计算器的锯柄情况。 金玉助手采集这个疤按钮,疤按钮刮的信息生成 e 代码, 我先把它复制下来,看一下是怎么才挤出来的 粘贴进来。首先它是根据窗口 窗口的内鸣标题菜机组成了锯柄, 以后根据内民拆集这个二级二级的, 然后三级的,然后是按钮,他有很多这个 这个按钮有很多相同的,看这里一级二级三级三级才,这里他有很多,所以很多的话要采用美局来去操作。 书组美剧的话应该就是出来,应该是剧扁组了。 我先把它标题改一下,然后把主窗锯柄取出来, 计算器信息矮点组成聚柄,这等于用进程 id 去伤口区别, 要用这个精神 id 来去聚宾。 然后这里我把标题改一下,这里输出一下,调试输出,把这个橱窗锯柄看看采集对不对, 只用一个心了,这个幺七七六已经采集到了 这里,我把那个 标题给改了,那个计算机的标题给改了, 这里变成空一了,我选两个,他应该有个空一空二,空一空二,到时我知道哪个县城管的是这个东西, 然后窗口霉锯所有痔疮, 我就不用二级窗口了,这类名的话,刚才看到他这类名, 这里采集的是三三七零橱窗的痔疮的, 哎,其实可以可以,直接就用这个 走吧, 这里是痔疮宿主 组双聚点,这里这里标,这个是三三七点零数组输出,看一下能不能正常才知道。 先把之前窗口关闭。 数组啊,整数型还是输出,左边那个是文本型,启动一个猜集到了几个成员, 他这里是空移,看一下他那个聚柄是哪一个?是, 这显示是七六八六五七四, 第二个成员是,那么就采集出来,然后再做一次美剧就好了。 他他成员数是三个,取数组成员数,如果这里不判断一下,万一出 说话就比较比较麻烦。他成员数是三个, 如果他等于三,说明我们采集是对的,然后我们再采集一下,所有这个按钮也是一样,用美剧来去采集, 再加一个速度 b, 整柱形,速度,速度输出, 看一下采集出来有多少个是文本型, 哎,没啥挤出来, 我看这边,哎,有没有出来 too, 这一节比较长啊,数数梅菜,鸡蛋 叔叔在这下面, 这正常的,也就说程序员,真的,我这不是不等,应该是等于三的,对, 好了,菜挤出来了,菜挤出来了,我们下一节再分析哪个聚品对应哪一个按钮的。

大家好,欢迎继续收看由张学院录制的二零二二年一元脚本培训多线程片的第八课,循环登录核心代码。二, 这节课的知识点可以说是整个框架中控的一个核心,一定要把它掌握, 我们只能说大家尽量去掌握吧。啊,如果说你实在是理解不了的话,那么你就跟着抄,因为这个东西你抄着我们后面也是一样使用的,也可以抄,说实在理解不明白,那么你就先跟着做啊,我们慢慢来。首先这节课的第一个知识点是窗口数量限制,我们 要限制他的一个开数。第二点,自定义数据类型铺初始值。这句话的意思是把我们的一些全局的变量,以及我们多线程的一些变量, 把他的初始值给他复制一下。三,卡住线程,这个我们稍后再讲,这可能大家听这个名字有点晕,对吧?打开我们上节课的这个原码, 然后这是我们上节课讲的到这个窗口数量限制这里,这是我们接下来要讲的,然后我们把这个代码呢给他进行一个简单的更改。 在这里啊,我们不用这个判断,这个判断看着有点不好看啊,我们用这个如果针, 然后再把这些给它剪接过去,放放在这个如果这里面 好,这是一样的啊,刚才我们这里是用了一个判断,但是看着比较这个难看一点啊,不好看。 写代码写时间长了,大家都有这个感觉啊,到时候你们自己就知道了,你看着代码哪里不舒服的话,你们都要像这些空格的话,像我这个人习惯我是一个都不留的哈,你们啊,慢慢来吧,写时间长之后你们都会有这种感觉,就像是啊,一点不让他有这个 难看的地方啊,不好看的地方都要给他修理一下,这也是一个,这是也是一个缺陷啊。 好,我们再次保存一下啊,那么这个窗口数量限制,我们上节课也说过,我们应该如何判断他呢? 当这个县城启动成功的时候,我们给大家了一个思路对不对?说全局变量,我们新建一个全局变量,当这个县城启动成功的时候,是不是就证明我们开启了一个窗口,对吧?那么我们就让全局变量加一。好,那么我们 说到就做就开始做啊,那么我们在全局大漠在他下边吗?我们给他一个窗口数量, ok, 他是一个整数型的,这是一个全局,这里呢我们就 用来记录已经开启的 游戏窗口数量。好,我们再次点击保存一下,然后把它拿过来复制切换回来,当这个线程启动成功的时候,我们就让它窗口数量等于 窗口数量加一,对不对?他这里窗口数量这个全局变量他的初始值是零,当第一次启动成功的时候,零加一, 一等于一,那么当第二次还有窗口启动成功的时候,这个时候是不是一加一就等于二呢?二的话,然后以此类推,我们是不是就判断出来他这个窗口开数,然后我们在这里再用一个判断来判断一下,不就可以了吗?我们判断这个 窗口数量让它小于五的时候,然后我们把它给它剪辑过来,这样的话我们再给它放进来,然后当它不小于五的时候,我们就给它弹出一个信息框, 窗口开数已经超过限制,请联系作者, 我们稍后来做个测试啊。窗口数量已经 超过限制,请您联系作者,请您联系作者。加三个叹号, ok, 我们点击一下保存, 那么这样我们是不是就限制了呢?窗口数呢?小于五,他就是四开,那么我们让他小于六,看一下他是不是五开啊?五开的话在这里他就是五个号,五个号在执行,我们勾选六个,看他会不会执行到第六个,我们来做一个测试。哎呦, 把,把这个三六零把它拿掉啊 啊,算了,我们要给他重启一下,要不然会出问题啊,三六零他给你拦截了一下,说不上他把这个什么文件给你, 给你隔离了,或者怎么样?我们先勾选,先勾选五个啊,我们现在这个是几开啊?小于六的话就是五开啊,因为五是小于六,等到他执行到这六的话,他是等于六了,他不小于六了,所以说他是五开,我们全部开始二三四五 五开,然后我们再勾选六,看它会不会直行,不会直行看到没有?还是五开,一三二一四五、三二一四五,就是这几个线程一直在直行,所以说我们限制它的一个开数就达到了,我们就用一个全距变量, 然后我看一下在这里吧做一个备注,限制软件开启的窗口数量。那么有的人说我想要在 这个中控界面,我想要加一个限制,怎么加呀?这不是很简单吗?加一个编辑框,这个编辑框里面的内容你让用户自己去填写,然后在我们这限制的时候,你这个就是一个编辑框点内容 小于六的时候,他是文本型,你把他给他,呃,你把他这个文本型里面的值,编辑框的内容给他转换成整数,这样一做对比,这不还是一样的吗?所以说这些东西,大家把这个理念学会之后,原理学会之后,你们可以自由的去发挥好这个窗口数量,这里我们就过不啰嗦啊, 下一步我们要给这个自定义数据类型负初始值,那么这个他是一个什么概念呢?呃,我们就用我们这个自定义数据类型里面的这些来做例子啊,来做例子, 正常来说我们是需要拿他的账号来做例子的,但是为了这个框架的完整性,我们要把整个流程先给大家讲下来,我们不要说最后之后我们再来给大家讲这个自定义数据类型复出日制,你们先跟着我这个整体的流程走下来,这里如果实在不懂,后面, 呃,我们再来添加这个实战的时候,大家就懂了。这里呢是为了一些,比如说现在这些窗口线程这句柄,他是多线程的,我们是为了把他的多线程的这些变量呢,给他负一个初始值, 正常来说他的初始值默认是假,对不对?所以在我们自定义负初始值这里呢,你就给他重新的给他负一下值就可以了,包括我们这个窗口线程距柄,那么有一些这些,呃,多线程变量他是不需要的,因为结束的 时候我们已经把它复制了,所以说我们给他复上制也没问题,不复制也没问题,但是你要首尾呼应啊。说这么多,大家可能还是有点晕啊,我们接着来吧,我们在这个下面给他添加一个子程序,这个子程序给他改为叫做自定义数据类型复初始值, 复出市值。 ok 啊,那么我们要给他一个穿餐,因为他需要这个穿餐,所以我们给他加一个整图形。 ok, 这里面我们放的什么呀?我们就给他负一个初始值,大漠多元城中括号,然后传餐点窗口线程距冰给他一个零,然后 大漠多线程穿餐点窗口线程是否启动,给他一个假, 因为这个变量他的初始值就是假,所以说这就是我们给自定义数据负初始值,同样的把这个子程序放在这里,放在这,我们给他负一个初始值就可以了,把这个局记次传进来。 ok, 这就完成了我们整个流程。后面呢,我们你如果写这个选择这个大区什么的都给他写上之后呢,你就在这里呢,直接把他的大区都给他提取出来,提取出来之后 就在这个子程序里面自定义数据类型复出的值里面,我们就直接把他的大区复制给我们多线城的一个变量。到后面呢我们直接拿过来就用了,包括他的一个账号密码都在这 这里给他提取掉。比如说啊,比如我们再给大家举一个例子,或者说我们现在就把它提取出来也是可以的,现在就提取吧。比如说我们现在勾选了他是一个自动登录,那么我勾选了这个账号,勾选了这个密码,对不对? 那你登录的时候是不是我们是不是需要用到这个账号,这个密码他怎么提取啊?就是在这里来提取的,我们直接把它拿出来。好,那么我们就需要这么做, 我们用到一个超级列表框,一点取标题,好,我们来看他的一个参数表象,所以表象,所以就是我们的这个传餐,那么就是传餐减一。 好,然后这个列索引,我们的账号在第几列啊?他在第一列,密码在第二列,所以我们的列索引是一,那么 取出来的标题,呃,给我们谁呀?我们要复制对不对?他是多线程的模式,所以在我们自定义数据类型这里,我们再给他添加一个下面叫做一个账号,他是一个文本型的,因为取的标题就是文本型的,同样呢,我们把密码也给他,加上, 他也是文本型,保存回来,然后我们给他复制,就是大漠多线城中括号传餐点账号, ok, 把它剪切粘过来,那么同样的密码也是一样的道理,我们就直接给他复制啊,这个就拖过来,这个账号呢,我们给他改成密码,这里呢啊?一列呢,我们给他改, 改成二例,这就完成了。你如果说了想要逻辑更加的严谨一点的话,那你就把这个做一个判断,说判断这个取标题不等于空的时候,我们再给他这样复直,实际上都一样,这样复直就可以啊。但是你如果说非要叫这个字,因为 有一些朋友啊,我们写代码有的时候已经告诉他这个,我们省略了这一步,说我不判断了,他就非要这个问,你说这个 不判断能行吗?对不对?他这种吧属于正常,因为每个人都有他的一个想法,你们可以加,可以不加,可以判断,可以不判断, 这个大家自由发挥啊,那么这就是我们自定义数据类型负初始值的一个作用,我们看一下多长时间好,时间还算啊,不长啊,我们继续。那么这些准备工作呢?我们都做好了,做好 之后我们下一步要干什么呀?下一步我们要卡住线程,在这个窗口数量下面,我们就要给他执行一个卡住线程,我们来重点讲解一下这个卡住线程他是干什么的?比如啊, 呃,打开我们的这个窗口线程这里,呃,比如我们勾选了三个线程,我来举例啊,我们先来运行起来,一二三全部开始, 那么这三个线程大家可以看到他都在执行任务呢。那么在大漠注意啊,注意听,在大漠绑定的时候,绑定的时候,如果啊,不能说, 如果有达摩绑定的时候,多个线程同时进行绑定操作,有时候会造成阻塞, 造成主赛,造成崩溃。好,那么如果说我们不在这给他卡住线程,当你这个第一个线程,比如说我们勾选了三个线程啊,我来简单的举一个例子,那大家就听懂啊,我们就不示例了。 比如说在这里我们勾选了三个线程,我们点击了全部开始,第一个线程正在执行绑定,他还没有绑定成功,第二个线程又去了,第三个线程又去了,他们都延时二点五秒,对不对?那这个时候他就有可能说造成崩溃,所以说我们避免这一种情况呢,我们给他加了一个卡住线程,用什么卡? 我们用判断循环手为针来卡住他,就一直当我勾选第一个线程的时候,我在这个死循环里面接收一个信号,当我收到说我第一条线程已经执行完某个动作的时候,收到这个信号我就跳出循环,这就是我们的一个思路。当然 我们的这个卡住线程并不单单是说只是为了在大漠绑定的时候避免他崩溃而加的这个卡住线程, 我们也是为了让他更智能,所以说加了一个卡路线能很多的一个理念,大家要尽量的去理解,然后我们在里面给他备注一下,我们要在在 此循环吧循环里面等待接收 信号,然后跳出现成, 那么这个信号就是我们启动的这个啊窗口线程,启动的这个窗口线程他执行到了哪里?比如说他执行完绑定的时候,我们就要跳出,那么这个信号我们应该如何定义呢?我们就直接给他一个全局的变量就可以, 我们这个变量呢,可以给他全局的,也可以给他多线程的啊,因为全局的他也不是多个线程访问一个公共变量。这里呢,我们就给他一个多线程的吧,在我们自定义数据类型这里呢,我们给他加一个 啊,我看一下,在他下面吧,这个看着比较难看,在他上面吧,给他加一个卡住线程,这样的 你可以给他一个逻辑型,也可以给他一个整数型啊,逻辑型的话就是真啊,然后那个整数型的就是假,我们给他一个整数型吧,啊,算了,统一一下吧,给他一个逻辑型吧。 好,我们点击一下保存。同样呢,那么在我们自定义数据类型付出水值这里呢,我们也要给他进行一个复制,对不对?所以我们弹幕多现成 穿三点卡住线程,让它等于甲,给它负一个初始值为甲,因为这个逻辑性的变量,它的啊默认的初始值它就是甲,所以在这当我们判断如果真 把它复制吧,偷个懒啊,把这个 w 多元城哎,这复制过来, 当它等于针的时候,我们就跳出循环, 当它等于针的时候,就证明我们接收到了信号啊,你在这个循环里面呢,直接用这个程序延时就可以,因为它是不是多线程的模式,尽量给它一个一点五秒的延时。 好,那么他在什么时候放开下一条线程呢?我来再次的举例一下啊,这个船啊,这个是局击次,这个没有船舱, 把它删掉,然后我们再来运行,给大家描述一下这个卡住线程我们是怎么回事啊?怎么回事?比如说现在我们勾选三个,三个线程的话, 他同样的还是只启动一个,因为当我们点击全部开始的时候,他这条线程走到这的时候,注意看啊,他就在这个死循环里面了, 一直在这个死循环,他就不会说向下再次的依次的去执行这个祭次,然后判断这些他不会了,因为在这他就卡住了,然后我们的县城呢,已经启动成功了, 他这个循环启动的这个线程在死循环里面卡着,然后我们这个窗口线程呢,第一条线程他就去做任务了, 一直在做任务,我们可以试一下,我们点击全部开始,他二三他不会启动,他只有第一个看到,没有当前第一个窗口线程在执行任务中, 对不对?这是一个思路。那么什么时候说我因为我勾选了三个二三,他可以启动啊?他在这里,他在这个循环里面等待着我们上一条线程的一个信号,也就说第一条线 现场启动的一个信号,所以说我们要给他一个信号,让他等于真,那么在哪里等于真,这个时候就可以由你做主,自由的去分配。说等到我们这一条线程在窗口线程这里,我们等他绑定成功之后,我们给他通知 可以,或者说我们让他做出一件任务之后,我们再让他绑定第二条线程也可以啊。我们再来简单举个例子,比如说我给他加了一个变量整数形,然后 a 等于 a 加一, 然后如果真 a 等于十,那么我们就直接 a, 这个不是,这是穿三,把这个狙击四我们都给他复制过来了啊,这个是不对的,因为他到这里传过来的就是穿三,这次 当当我们他 a 等于十的时候,我们就把这个信号量给他为真,然后他这边是循环,判断这个现象等于真,我就跳出这个循环,这个时候他跳出循环是不是就继续启动第二个线程去了?这样的话我们是不是就完美了呀?我们来试一下啊,这个我们给他 加一个编辑框吧,加编辑框是最好看着比较这个明显一点,是否允许多?行,我们给它为一个针,好,我们再切回来这个代码在窗口线程这里呢,我们就 呃, a 等于 a 加一,我们让编辑框一点加入,加入文本,好,然后是到文本 a 加井号画行弧。 好,可以了,我们再来运行,再来看一下效果,这次的话当他输入十的时候,他就会启动第二个线程了,很明显啊,很明显,我们点击全部开始来看一下效果,到十的时候,然后第二条线程继续向里面插入, 十一、十二,第二个,第二个线程已经启动了,看到没有?他已经乱了,对不对?因为第二条线程已经启动了,然后稍后他再到时候第三条线程也已经启动了,所以 证明我们的思路是完全正确的,就是让大家要理解这个卡住线程什么时候放是我们自己 决定的,只要我们把这个信号量给他改为真,他这里的下一条线程就会继续去执行启动了呀,对不对?这个循环他跳出了,就证明这里他会继续循环去判断,然后启动这个账号。 好,这里呢,大家先去理解一下吧,下节课我们来完善这里的, 先把这个大漠啊,我们把这个窗口线程,这个多线程的大漠呢,给他免注册一下,然后完善一下他失败的情况下,我们应该如何处理,都给大家进行讲解。同时后面我们再给大家进行完善,说 当我们删除这些账号的时候,他会有一个顶账号的一个状态如何处理?县城混乱如何处理,我们刷新这个删除账号刷新怎么处理 都会来进行一个全新全面的进行讲解。我们哦,比如啊,举个例子吧, 看一下多长时间啊?二十分钟可以了。比如说我们现在啊,我跑了五个号,然后这五号这个 他被封号了,我就不需要了,我就继续换。那么在这呢,我们就给他一个删除,全部删除,然后你删除之后这些勾选的全部拿掉了,但是他六七八九就向上顶了,对不对?向上顶了,顶到了最上面,那这个时候 我们也没有结束掉他线程,会造成混乱呢?我们教大家如何来处理啊?我们先结束,大家先把这节课的内容窗口数量限制、自定义数据类型复出了之以及卡住线程把它理解。我们这节课呢,就到这里,我们下节课再见。

我在兵器里面提取这个计算器,我打算用多线程来控制这个计算器,同时控制多个计算器。妈新建一个窗口, 先写一个现成数, 然后增加一个编辑框,这用来填写那个现成的数量, 把名字改为现成数, 再增加一个启动按钮,按钮名称叫做启动, 标题也叫启动, 那这样子我们基本的界面就已经设定完成了。





嗯,大家好,我是五幺遇见。嗯,我们今天来学习这个呃,多县城来给每个县城分配不同的任务。那么在我们的印象中,多县城去并发执行同一个任务,提高我们的这个呃县城的这个执行的效率, 那你要让每个县城去执行不同的任务,这就有一点点的难度,我们可以从以下三个角度来分析。第一就是说我们有 n 个不确定的县城,开启县城 a, 县城 b, 县城 c, 县城 d, 县城 e, 那我们给每个县城去分配一个任务,这是一种情况, 我们可以检测为多县城单任务,还有就是有 n 个不确定的县城 abcde, 我们给每个县城去分配多个任务,当然这多个 并不是对等的,你可以现成 a 可有三个,现成 b 可有四个,现成 c 可有两个。还一种就是说,呃,我们可能去去开启 n 个不确定的县城,但每个县城针对的这个游戏角色的等级自动读取等级来分配 这个多个不对等的任务。我们从三个角度来展示这个呃,这个技术。首先我们来啊开启这个第一个第一种情况, 那么我们呢?啊,为了简化这个模板,这个框架,我们这个也没有做太多的美化。好,我们先来这个读取这个游戏信息,我现在因为是录录课开了两个,大家看到没有读取他的这个 pid 聚柄了。然后我们给第一个游戏来分配任务,我们左键点击啊,这个我们给他分配到这个一百八,因为我这两个账号哈,一个是一百八啊,到一百九的,一个是一百七到一百八的,我们分配给他。 好,底下的四个呢?一二三四,我们让他不对等,故意让他不对等,分配分配给这个一百七到一百八的这个呃,账号,那么这时我们只要启动现场,大家看,嗯, 他就开始执行任务了啊,很明显这两个县城执行的任务是不一样的,我们用了这种弹框来模拟任务流程啊,为了提高路科的速度。好,我们来看一下, 这个是一百八十一集,我们看他只有两个任务,现在执行第二个任务修装备,他就会开始结束,而这个呢,我们看到他有四个任务,他在执行第二个任务, 很明显每一组他们展示的任务都不一样,因为这个已经结束了,大家看到没,这个地方我们已经给他输出。呃,这是现场的结束,这样呢,我们就把他这个创建的对象给销毁了,这样能够优化我们的系统资源。 好,他来进行第三个啊,第四个,最后一个,所以说他的这个两个县城的任务是不对等的, 这个县城已经结束掉了哈,我们在等这个县城,好,这样的话两个县城全部结束掉了,那么这是 通过他的等级,我们看我们任务,我们给等级分配了不确定的任一个任务之后,他会根据自己的等级自动的去读取这些你分配的任务,这是第一种情况,我们来看第二种情况。 呃,不同的县城分配多个不同的任务哈,我们看这种情况是怎么让他来实现。 呃,我们先来读取游戏信息,读了,我们现在开了两个,第一个我们选中他,选中他之后我们给他点击两个任务,我们给他添加点一个添加, 他就会为这个县城分配两个任务。好,第二个我们选中,我们给添加。呃,三个任务,他就会添 添加三个任务,这里有三个任务我们看到,然后我们这样的话,我们就为我们两个县城啊,因为这个录屏我开特意开了两个,三个摆不开, 为这两个县城就分配了不对等的,不相等,不相同的多个任务。好,我们进行这个啊,启动现场,大家看他这个地方绑定状态。 ok, 他们开始不同的任务啊,再看。 呃,这两个他重复了啊,有两个是重复的,这正好,这说明他也能执行相同的任务,前两个都一样,后面就不一样了啊,我们等后边的看, 那么这只有两个任务他就完成了,之后他就不执行了。这个一百八十一级的账号啊。 好,大家看这个已经停止了这个继续在执行,因为他的任务比他多多了,对吧?他在执行不同的任务,这说明你也可以给他分配相同的任务,也可以给他分配不同的任务, 也可以给他分配相同数量的任务,也可以给他分配不对等数量的任务,他都会自动的去执行,这是多任务。 好,我们等他执行完毕啊,他开始这个刷啊,后边还有还有一个回程,马上就结束了哈,再闪烁四次, 我们是倒着来这个演示的,但讲课呢,是从简单的到 这个男的。好,我们演示最后一种情况,最后一种情况就是分配单个任务啊,单个任务我们来看。呃,单个任务的话啊,我们先来读取游戏信息啊,我们看你开了几个,第一个啊,我们给他 他只能分配一个任务,对吧?那我们只能给他一个任务,一个任务。第二个我们也给他分配一个任务, 再给他分配一个啊胶任务。好,大家看这里面有胶任务了,然后我们启动现场, 大家看他两个窗口啊啊,几乎是同步执行的不同任务,一个是这,一个是这啊,这就是说两个不同的县城分配了两个不同的任务。 好,我们再给他调试一下啊,我们选中第一个现成,我们给他分配一个这个任务啊,给他,呃修装备。 ok, 这原来是交任务,交任务,我们给分配一个 啊,那我们给他分配修装备,我们应当选中第二个,给他分配一个回程。 好,我们来启动我们的这个啊现成,大家看他执行任务又不一样了,这就是呃,每个县城执行了呃单个呃不同的任务,那么我们在下一个环啊啊展示完之后呢,我们给他分配什么呢 啊?两个县城给他分配相同的任务。好,那第一个是第一个是修装备 啊,第二个呢我们也给他改成什么呢啊?修装备,我们来看一下,我们也给他改成修装备, 我们先选动他啊,给他分配一个修装备,再看这两个都是修装备他,那么这样的话呢,他就可以启动同样的任务大看他弹出的这种任务展示窗口啊,就是一致的,呃,所以说,呃,这个 呃框架和模板他的应用非常的灵活自如啊,那么你如果想实现这套的话呢啊需要了解这个技术。嗯,好的啊,我们的展示就到这里。好的,再见。