1.public void onClick(View v) {
Thread t = new Thread(){
public void run(){
// Long time comsuming operation
}
};
t.start();
}
public void onClick(View v) {
Thread t = new Thread(){
public void run(){
// Long time consuming operation
_activity.runOnUiThread(new Runnable() {
@Override
public void run() {
_activity.setStatus("Long Operation Completed");
}
});
}
};
t.start();
}
2.
public void onClick(View v) {
// TODO Auto-generated method stub
Thread t = new Thread(){
@Override
public void run() {
// Long time consuming operation
status.post(new Runnable() {
@Override
public void run() {
status.setText("Long Operstion Completed");
}
});
}
};
t.start();
}
3.
public void onClick(View v) {
// TODO Auto-generated method stub
Thread t = new Thread(){
@Override
public void run() {
// Long time consuming operation
status.postDelayed(new Runnable() {
@Override
public void run() {
status.setText("Long Operstion Completed");
}
}, 1000);
}
};
t.start();
}
4.
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
// Code to process the response and update UI.
}
};
public void onClick(View v) {
Thread t = new Thread(){
public void run(){
// Long time comsuming operation
Message myMessage=new Message();
Bundle resBundle = new Bundle();
resBundle.putString("status", "SUCCESS");
myMessage.obj=resBundle;
handler.sendMessage(myMessage);
}
};
t.start();
}
5.
public class LongTimeConsumingOperation extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... params) {
// perform Long time consuming operation
return null;
}
/* (non-Javadoc)
* @see android.os.AsyncTask#onPostExecute(java.lang.Object)
*/
@Override
protected void onPostExecute(String result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
}
/* (non-Javadoc)
* @see android.os.AsyncTask#onPreExecute()
*/
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
super.onPreExecute();
}
/* (non-Javadoc)
* @see android.os.AsyncTask#onProgressUpdate(Progress[])
*/
@Override
protected void onProgressUpdate(Void... values) {
// TODO Auto-generated method stub
super.onProgressUpdate(values);
}
}
public void onClick(View v) {
new LongTimeConsumingOperation().execute("");
}
分享到:
相关推荐
### 总结 Java多线程提供了强大的并发处理能力,开发者可以通过继承`Thread`类或实现`Runnable`接口来创建和管理线程。正确使用`start()`方法而非`run()`方法是确保线程正确启动的关键。理解Java多线程的工作原理和...
### Java多线程编程总结 #### 一、Java线程:概念与原理 - **操作系统中线程和进程的概念** 当前的操作系统通常都是多任务操作系统,多线程是一种实现多任务的方式之一。在操作系统层面,进程指的是内存中运行的...
【Windows多线程总结】 Windows操作系统提供了一套完整的API来支持多线程编程,使得开发者可以在同一进程中同时执行多个线程,实现并发处理任务。本文将深入探讨Windows多线程编程的基本概念、线程同步、线程池以及...
在Windows应用程序开发中,MFC(Microsoft Foundation Classes)框架提供了对多线程的支持,使得开发者可以构建更加复杂的并发系统。MFC中的线程分为两类:工作者线程和用户界面线程,它们各自有不同的特性和用途。 ...
Java多线程是Java编程中的一个核心概念,它在现代软件开发中扮演着至关重要的角色。...通过深入学习和实践上述Java多线程的知识点,开发者能够构建出高效、稳定、可控的多线程程序,满足各种复杂的并发需求。
### Java多线程编程总结 #### 一、Java线程:概念与原理 1. **操作系统中线程和进程的概念** - 当前的操作系统通常为多任务操作系统,多线程是实现多任务的一种手段。 - **进程**:指内存中运行的应用程序,每个...
以下是对Java线程安全的深入总结: ### 一、线程安全的定义 线程安全是指当多个线程访问同一块代码时,如果每个线程都能得到预期的结果,且不产生数据不一致或同步问题,那么这块代码就被称为线程安全的。Java中的...
随着Java版本的更新,Java也引入了新的并发工具类,例如java.util.concurrent包下的并发集合、原子操作类以及各种并发控制类,这些工具类提供了比传统synchronized和volatile关键字更强大、更灵活的线程同步控制机制...
C#.net同步异步SOCKET通讯和多线程总结 C#.net同步异步SOCKET通讯和多线程总结是指在C#.net环境下实现的同步异步套接字通信和多线程编程的总结。套接字(Socket)是tcp/ip网络协议接口,内部定义了许多的函数和例程...
线程在IT行业中是多任务并行处理的关键概念,它使得程序可以在同一时间执行多个不同的任务,极大地提高了程序的效率和响应性。本篇将基于提供的文件名来探讨线程的相关知识点及其应用。 1. **线程基础** - 线程是...
【多线程精心总结】 在Java编程中,多线程是一种重要的并发处理方式,它可以提高程序的执行效率,尤其在处理大量并发任务时。本文将深入探讨Java线程中的几个关键概念,包括`yield()`、`sleep()`、`wait()`、`join...
### 线程总结笔记——基于Linux环境下的线程控制与同步 #### 一、引言 本篇“线程总结笔记”主要针对Linux环境下多线程编程中的关键概念进行了整理与归纳,尤其是针对线程同步的问题进行了深入探讨。通过一个具体...
本文将深入探讨Java多线程的相关知识点,包括线程的创建、线程的状态、同步机制以及线程安全问题。 1. **线程的创建** Java提供了两种创建线程的方式: - **继承Thread类**:自定义类继承Thread类,并重写run()...
C#.net 同步异步 SOCKET 通讯和多线程总结 本文旨在总结 C#.net 中的同步异步 SOCKET 通讯和多线程编程,涵盖服务端和客户端的实现细节。 一、服务端实现 服务端使用 System.Net 和 System.Net.Sockets 命名空间...
【JAVA多线程总结】 Java 多线程是Java编程中的关键特性,它允许程序同时执行多个任务,提高系统的效率和响应性。本篇总结涵盖了Java多线程的基础概念、创建与启动、线程调度、同步与协作以及新特性。 **一、Java...
C++多线程总结 本文档对C++多线程编程进行了总结,介绍了三种创建线程的方法:CreateThread函数、AfxBeginThread函数和_beginthread()/_beginthreadex()函数,同时对线程的管理和终止进行了详细的讲解。 ...
GDB 调试多线程程序总结 GDB 调试多线程程序是一种复杂的调试技术,需要熟练掌握 GDB 的多线程调试命令。下面是 GDB 调试多线程程序的总结。 基本命令 在 GDB 中,使用 `info threads` 命令可以显示当前可调试的...
### 总结 本文从多线程的基础概念出发,深入探讨了Java中多线程的实现机制及线程安全问题,并介绍了几种常见的设计模式(包括单例模式、工厂模式和适配器模式),这些模式有助于解决多线程环境下的常见问题。通过对...
### Java线程总结教程知识点详解 #### 一、操作系统与多线程概念 - **多任务与分时操作系统**:现代操作系统(如Windows、Linux)能够实现多任务处理,即在用户看来似乎多个应用程序在“同时”运行。实际上,这是...
本文将对C++中三种常见的线程创建方法进行总结,并讨论线程同步的相关知识。 1. 使用 `CreateThread` 函数生成的线程 - **函数原型**:`HANDLE CreateThread(LPSECURITY_ATTRIBUTES lpThreadAttributes, DWORD ...