UI高级 多线程

1. 进程概念

进程是程序的基本执行实体,进程是线程的容器。

2. 线程的概念

有时被称为轻量级进程,是程序执行流的的最小单元

3.进程和线程的区别

子进程和父进程有不同的代码和数据空间,多个线程则共有一个数据空间

4. 多线程的概念

概念: 单个程序中同时运行多个线程完成不同的任务。是指软件或硬件上实现多个线程并发执行的技术

作用: 节约CPU时间,避免程序卡死。多线程是为了同时完成多项任务,不是为了提高运行效率,而是为了提高资源的使用效率来提高系统的效率。

5.并发、并行和串行

并行: 一组程序按独立异步的速度执行,即两行代码同时执行,并不一定是同一时间发生,只是任务执行的时间上有重叠。

并发:在同一时间段内,两个或多个程序同时开始执行。

串行:几个任务依次执行。在任务执行的时间上没有重叠。

6. 同步和异步

同步:是指两个任务之间的关系,一个任务需要等待另一个任务的反馈结果才能继续执行(例如打电话下达通知)

异步:一个任务不需要等待其他任务的反馈也能继续执行(发短信下通知)

时间: 2024-08-24 09:35:00

UI高级 多线程的相关文章

UI高级组件

今天继续学习UI高级组件 网格视图 GridView 用GridView标签添加,显示网格视图,需要用到适配器,共有四种适配器 ArrayAdapter,SmipleAdapter,SmipleCousorAdapter,BaseAdapter.以下是四种实例: 1,ArrayAdapter New ArrayAdapter(Context context, //Context:上下文,即所在的Activity int resource, //Resource:布局样式,一般为TextView

MFC UI按钮多线程

单线程操作UI会使窗口假死,所以UI操作需要用到多线程 实现效果:当点击kiss时按钮闪动3次 原理:自定义一个消息(WM_CHANGE_BUTTON),当点击按钮"kiss"时,启动一个新的线程,线程每隔0.5s钟发送一次WM_CHANGE_BUTTON消息.程序监听到该消息时调用消息函数,改变按钮大小. 1.在界面上添加一个按钮修改ID为 IDC_KISS 2.ctrl+shift+x,创建类向导中的消息机制 3.定义事件函数 #define WM_CHANGE_BUTTON WM

UI进阶 多线程

一.多线程概述 程序.进程.线程 程序:由源代码生成的可执行应用.(例如:QQ.app) 进程:一个正在运行的程序可以看做一个进程.(例如:正在运行的QQ就是一个进程),进程拥有独立运行所需的全部资源. 线程:程序中独立运行的代码段.(例如:接收QQ消息的代码) 一个进程是由一或多个线程组成.进程只负责资源的调度和分配,线程才是程序真正的执行单元,负责代码的执行. 单线程 每个正在运行的程序(即进程),至少包含一个线程,这个线程叫主线程. 主线程在程序启动时被创建,用于执行main函数. 只有一

UI高级-沙盒

[day3_1_Sandbox]:沙箱的介绍 snadbox沙箱沙盒 沙箱根目录下的几个文件夹: 1.应用名称.app存放应用程序的素材 2.Documents:存放应用运行时需要用到的数据(关键性数据),此路径可读可写是经常打交道的一个路径(itunes备份时会备份) 3.Library/Caches:缓存文件夹(itunes备份时不会备份) 4.Library/Preference:用来存放程序的偏好设置,系统提供了api直接操作此文件夹下面的文件 5.tmp:临时文件夹,里面的数据系统会固

C#中的多线程 - 高级多线程 z

原文:http://www.albahari.com/threading/part4.aspx 专题:C#中的多线程 1非阻塞同步Permalink 之前,我们描述了即使是很简单的赋值或更新一个字段也需要同步.尽管锁总能满足这个需求,一个存在竞争的锁意味着肯定有线程会被阻塞,就会导致由上下文切换和调度的延迟带来的开销,在高并发以及对性能要求很高的场景,这不符合需要..NET Framework 的 非阻塞(nonblocking)同步构造能够在没有阻塞.暂停或等待的情况下完成简单的操作. 正确编

C# Wpf异步修改UI,多线程修改UI(二)

1.使用定时器异步修改 这是相对比较简单的方法 在Wpf中定时器使用DiapatcherTimer,不使用Timer原因: 在一个应用程序中,Timer会重复生成time事件,而DispatcherTimer是一个集成到了Dispatcher队列中的时钟,这可以使它被按照指定的时间间隔以指定的priority定期执行. 对于一个Timer时钟事件,系统并不能保证在时间间隔到达后被立即执行,但是能够确保在时间间隔到达之前不被执行.这是因为DispatcherTimer像其他操作一样被放置在了Dis

iOS UI高级之网络编程(HTTP协议)

HTTP协议的概念 HTTP协议,Hyper Text Transfer Protocol (超文本传输协议)是用于从万维网服务器传送超文本到本地浏览器的传输协议,HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型 了解C/S模式 Client(客户端)和Server(服务器)常常分别处在相距很远的两台计算机上,Client程序的任务是将用户的要求提交给Server程序,再将Server程序返回的结果以特定的形式显示给用户:Server程序的任务是接受客户程序提出的服务请求

Java 高级 --- 多线程快速入门

这世上有三样东西是别人抢不走的:一是吃进胃里的食物,二是藏在心中的梦想,三是读进大脑的书 多线程快速入门 1.线程与进程区别 每个正在系统上运行的程序都是一个进程.每个进程包含一到多个线程.线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行. 所以线程基本上是轻量级的进程,它负责在单个程序里执行多任务.通常由操作系统负责多个线程的调度和执行. 使用线程可以把占据时间长的程序中的任务放到后台去处理,程序的运行速度可能加快,在一些等待的任务实现上如用户输入.文件读写和网络收发数据等,线

iOS开发——UI高级OC篇&自定义控件之调整按钮中子控件(图片和文字)的位置

自定义控件之调整按钮中子控件(图片和文字)的位置 其实还有一种是在storyBoard中实现的,只需要设置对应空间的左右间距: 这里实现前面两种自定义的方式 一:imageRectForContentRect/titleRectForContentRect 自定义一个按钮控件在系统自带的位置设置方法中实现对应子控件位置调整 1 /** 2 3 * 设置内部图标的frame 4 5 */ 6 7 - (CGRect)imageRectForContentRect:(CGRect)contentRe