摘要: 记得把host.port.和发送的参数换成你自己的 import 'dart:io';import 'dart:async'; class SocketManage { static String host='xxx.xxx.xxx.xxx'; static int port=80; static 阅读全文
posted @ 2019-08-23 22:07 李艳艳665 阅读(3792) 评论(0) 推荐(0) 编辑
摘要: 1.1构造方法几个常用的变量group:线程组 ,线程组包含其他的线程组,形成一个树结构,除了初始线程组外,其他的线程组都会有父线程,线程可以访问当前线程组的信息,不能访问父线程组信息daemon:守护线程, 实际都是运行了init()方法,我们详细介绍下这方法 // ThreadGroup g, 阅读全文
posted @ 2019-08-23 22:07 李艳艳665 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 1.New(线程创建未启动)(http://www.amjmh.com/v/)2.RUNNABLE(正在执行中的线程)3.BLOCKED(被阻塞并且再等在监视器锁释放)调用join()、sleep()、wait()使线程处于Blocked状态4.WAITING(等待被唤醒)5.TIMED_WAITI 阅读全文
posted @ 2019-08-23 22:07 李艳艳665 阅读(84) 评论(0) 推荐(0) 编辑
摘要: 3.1 run()方法 处理线程中执行的逻辑,如果继承Thread类则必须重写该方法. 3.2 start()方法 //方法是加了锁的。 //原因是避免开发者在其它线程调用同一个Thread实例的这个方法,从而尽量避免抛出异常。 //这个方法之所以能够执行我们传入的Runnable里的run()方法 阅读全文
posted @ 2019-08-23 22:07 李艳艳665 阅读(124) 评论(0) 推荐(0) 编辑
摘要: /** * 测试快速点击事件 */ fastButton.setOnClickListener(new OnClickFastListener(http://www.amjmh.com) { /** * 自定义实现的抽象方法,不在重写onClick方法,该方法用于执行点击后的逻辑 */ @Overr 阅读全文
posted @ 2019-08-23 22:07 李艳艳665 阅读(200) 评论(0) 推荐(0) 编辑