zoukankan      html  css  js  c++  java
  • 多线程的概述(一)

     
    程序 :由源代码生成的可执行应用 QQ.app 
     
    进程 :一个正在运行的程序可以看作是一个进程,拥有独立运行所需的全部资源
     
    线程 :程序中独立运行的代码段
     
    一个进程是由一个或多个线程组成。进程只负责资源的调度和分配,线程才是程序真正的执行单元,负责代码的执行。
     
    单线程 :每个正在运行的程序就是上面说的进程,至少包含一个线程,这个线程叫主线程。主线程在程序启动时被创建,用于执行main函数。那么只有一个主线程的程序就称作 单线程程序。在单线程程序中,主线程要负责执行程序的所有代码(UI的展现和刷新、网络请求、本地存储等等),这些代码只能 顺序执行 而无法 并发执行。
     
    这样就引出了多线程
     
    多线程 :同理 拥有多个线程的程序就称作多线程程序。iOS允许用户自己根据需要开辟若干新的线程,相对于主线程来说,这些线程叫子线程。不管是主线程还是子线程都是独立的运行单元,各自的执行互不影响,因此能够并发执行。
     
    单线程和多线程的区别
    单线程程序 :只有一个线程即主线程,代码顺序执行,容易出现代码阻塞(页面假死)。
    多线程程序 :与多个线程,线程间独立运行,能有效的避免代码阻塞,并且提高程序的运行性能。
     
    **注意:iOS中关于UI的添加和刷新必须在主线程中操作
     
    iOS平台下的多线程有以下4个实现种类
    NSThread
    NSOprationQueue
    NSObject
    GCD
  • 相关阅读:
    (网页)中的简单的遮罩层
    (后端)shiro:Wildcard string cannot be null or empty. Make sure permission strings are properly formatted.
    (网页)jQuery的时间datetime控件在AngularJs中使用实例
    Maven Myeclipse 搭建项目
    MyBatis 环境搭建 (一)
    java 常用方法
    XML 基础
    JS BOM
    js 事件
    js 的使用原则
  • 原文地址:https://www.cnblogs.com/xs514521/p/5467237.html
Copyright © 2011-2022 走看看