当前位置: 首页 > news >正文

网站系统开发方式做网站开发的有外快嘛

网站系统开发方式,做网站开发的有外快嘛,wordpress 打卡插件,南昌网上服务Handler 、 Thread 和 HandlerThread详解 区别: 1)Handler:在Android中负责发送和处理消息,通过它可以实现其他支线线程与主线程之间的消通讯 2)Thread:线程,可以看作是进程的一个实体&#xff…
Handler Thread HandlerThread详解
区别:
1)Handler:在Android中负责发送和处理消息,通过它可以实现其他支线线程与主线程之间的消通讯
2)Thread:线程,可以看作是进程的一个实体,是CPU调度和分派的基本单位,他是比进程更小的独立运行的基本单位
3)HandlerThread:封装了Handler + ThreadHandlerThread适合在有需要一个工作线程(非UI线程)+任务的等待队列的形式,优点是不会有堵塞,
减少了对性能的消耗,缺点是不能同时进行多个任务的处理,需要等待进行处理。处理效率低,可以当成一个轻量级的线程池来用
Handler 实现原理:
由 handler、Looper、MessageQueue 三部分组成,由handler  post( @NonNull Runnable r)消息到到MessageQueue( 单向链表),
而MessageQueue 由Looper 管理做无限的循环取消息队列里面的消息并将消息分给handler处理,
当消息一直循环到MessageQueue里没有消息了,循环就阻塞(相当于结束循环)
然后handler 通过回调方法回调消息给 handleMessage(Message msg) 处理;
部分源码截图:
1.handler 发送消息
2.looper  myLooper 获取一个Thread相对应唯一一个looper,和looper的构造函数(Thread. currentThread() 获取当前代码块被哪个线程调用)
  1. MessageQueue,一个入队方法enqueueMessage() 方法,一个出队方法
详细介绍MessageQueue 参考连接 https://www.sohu.com/a/145311556_675634

HandlerThread 实现  ,本质就是一个线程Thread,(其中封装Looper )

public class HandlerThread extends Thread {
    int mPriority;
    int mTid = -1;
    Looper mLooper;
    public HandlerThread(String name) {
        super(name);
        mPriority = Process.THREAD_PRIORITY_DEFAULT;
    }
    /**
     * Constructs a HandlerThread.
     * @param name
     * @param priority The priority to run the thread at. The value supplied must be from
     * {@link android.os.Process} and not from java.lang.Thread.
     */
    public HandlerThread(String name, int priority) {
        super(name);
        mPriority = priority;
    }
    /**
     * Call back method that can be explicitly overridden if needed to execute some
     * setup before Looper loops.
     */
    protected void onLooperPrepared() {
    }
    @Override
    public void run() {
        mTid = Process.myTid();
        Looper.prepare();
        synchronized (this) {
            mLooper = Looper.myLooper();
            notifyAll();
        }
        Process.setThreadPriority(mPriority);
        onLooperPrepared();
        Looper.loop();
        mTid = -1;
    }
    /**
     * This method returns the Looper associated with this thread. If this thread not been started
     * or for any reason is isAlive() returns false, this method will return null. If this thread
     * has been started, this method will block until the looper has been initialized.  
     * @return The looper.
     */
    public Looper getLooper() {
        if (!isAlive()) {
            return null;
        }
        // If the thread has been started, wait until the looper has been created.
        synchronized (this) {
            while (isAlive() && mLooper == null) {
                try {
                    wait();
                } catch (InterruptedException e) {
                }
            }
        }
        return mLooper;
    }
    public boolean quit() {
        Looper looper = getLooper();
        if (looper != null) {
            looper.quit();
            return true;
        }
        return false;
    }
    public boolean quitSafely() {
        Looper looper = getLooper();
        if (looper != null) {
            looper.quitSafely();
            return true;
        }
        return false;
    }
    /**
     * Returns the identifier of this thread. See Process.myTid().
     */
    public int getThreadId() {
        return mTid;
    }
}
http://www.yayakq.cn/news/932495/

相关文章:

  • 网站开发任务需求书泗洪网站设计公司
  • 网站子域名怎么做建站宝盒建网站
  • 网站现在用h5做的吗wordpress 钛媒体
  • 织梦网站源文件没有style文件夹怎么修改网站背景视频相亲网站开发成本
  • 做普通网站选择什么服务器天津seo选天津旗舰科技a
  • 新北建设局网站php租车网站源码
  • 怎么做同城购物网站广州建筑集团官网首页
  • 做企业的网站都要准备什么帕兰映像 wordpress
  • 郑州响应式网站品牌策划ppt案例
  • 网站防护怎么做动漫制作就业方向
  • 从零学习做网站做外贸一般做什么
  • 做便宜网站公司要搭建网站
  • 个人做企业 网站wordpress条文件夹
  • 淘宝软件营销网站建设网站后台管理 ftp
  • 一级页面的网站怎么做的长沙微信交流群
  • 承接婚庆公司网站建设wordpress jsdelivr
  • 网站做导航设计的作用是什么网站设计需要什么专业
  • 中山网站设计长沙做网站哪家公司好
  • 钓鱼网站盗号下载基金管理公司司网站建设要求
  • 网站首页怎么用dw做架构师是做什么的
  • 深圳极速网站建设推荐亿省心网站托管
  • 建设网站的报价wordpress 增加菜单
  • 阿里云腾讯云网站建设网站建设朝阳
  • 企业培训课程推荐做一网站优化要多少钱
  • 常州网站建设最易如何建设网站简介
  • 常州网站制作哪家好电子商务网站建设与维护书
  • 安宁市建设局网站seo什么意思
  • 面料 做网站wordpress重装后404
  • 免费外贸自建网站苏州朗冠网站建设公司
  • 怎么做网站推广怀化汕头建设企业网站