android中延迟执行某个任务】的更多相关文章

一.开启新线程 new Thread(new Runnable(){ public void run(){ Thread.sleep(XXXX); handler.sendMessage();----告诉主线程执行任务 } }).start 二.利用定时器 TimerTask task = new TimerTask(){ public void run(){ //execute the task } }; Timer timer = new Timer(); timer.schedule(ta…
android App开发在某些情况下需要有延时功能,比如说App首页显示定格3秒,然后自动跳到登录页的情况,这就好比是一个预加载,但是这个预加载可能瞬间就完成了,撑不到3秒钟,这是就要求你做延时处理. 下面是三种方法: 一.线程 1. new Thread(new Runnable(){ 2. public void run(){ 3. Thread.sleep(XXXX); 4. handler.sendMessage();----告诉主线程执行任务 5. } 6. }).start 二.延…
前几天去国美在线面试,就遇到了上面的问题,当时是笔试,只写出来了第一种方法,现在整理了一下. //1.performSelector方法:在当前线程中执行的方法,使用默认模式,并延迟执行@selector方法. [self performSelector:@selector(runDelayMethod) withObject:nil afterDelay:2.0]; //取消之前注册的performSelector:withObject:afterDelay:这个方法 //[NSObject…
公用延迟执行的方法: - (void)delayMethod { NSLog(@"delayMethodEnd"); } 方法一.performSelector 方法 1.延迟执行 /** * 延迟执行 * * @param aSelector 方法名称 * @param anArgument 要传递的参数,如果无参数,就设为nil * @param delay 延迟的时间 */ - (void)performSelector:(SEL)aSelector withObject:(nu…
android的程序基于java开发,当我们接上调试器,执行adb shell,就可以执行linux命令,但是却并不能执行java命令. 那么在android的shell中是否就不能执行java程序了呢. 答案是否定的.我们可以通过app_process来执行java程序. 写一个hello world吧,就是刚开始学java的时候 写得那个hello world,这次要在android上运行. 用记事本新建hello.java文件,编写如下代码: public static class hel…
SQL有定时执行的语句WaitFor. 语法格式:waitfor {delay 'time'|time 'time'} delay后面的时间是需要延迟多长时间后执行. time后面的时间是指定何时执行,格式为'HH:MM:SS',不支持日期   例: --指定10:00执行 Begin waitfor time '10:00' select * from tablename end   --指定等待1小时后执行 begin waitfor delay '1:00' select * from t…
项目中遇到一个情况,先生成文件再上传:但有时候发出指令后上传会不成功,需要再发一次指令方能上传. 猜想是由于文件还没生成就执行「上传」指令了.想到要延时.Android中单纯用currentThread.sleep()方法好像是不行的,要用「Handler」. 用以下代码成功实现延时: new Handler().postDelayed(new Runnable(){ public void run() { //显示dialog } }, 5000); //5秒 补充:API是这么解释的: 「T…
目录(?)[-] 小例子 Handler的处理 Activity的代码片段 后台线程和UI的互动 文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件.转载须注明出处:http://blog.csdn.net/flowingflying/ 之前我们介绍了Android主线程异步处理机制.通过Handler可以将消息放置到队列中等待处理.Handler可以控制消息放置在队列方式:sendMessage(), sendMessageAtFrontOfQueue(), sendMess…
Method1. performSelector方法 Method2. NSTimer定时器 Method3. NSThread线程的sleep Method4. GCD 公用延迟执行方法 - (void)delayMethod{ NSLog(@"delayMethodEnd"); } Method1:performSelector [self performSelector:@selector(delayMethod) withObject:nil/*可传任意类型参数*/ after…
在js中,延迟执行函数有两种,setTimeout和setInterval,用法如下: function testFunction(){Console.log('hovertree.com');} setTimeout("testFunction()","6000"); //6000毫秒后执行testFunction()函数,只执行一次. setInterval("testFunction()","6000");//每隔600…
[源码下载] 重新想象 Windows 8 Store Apps (42) - 多线程之线程池: 延迟执行, 周期执行, 在线程池中找一个线程去执行指定的方法 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 线程池 通过 ThreadPoolTimer 实现延迟执行 通过 ThreadPoolTimer 实现周期执行 通过 ThreadPool 实现“在线程池中找一个线程去执行指定的方法” 示例1.通过 ThreadPoolTimer 实现延迟执行(Thread…
像C.C++.JAVA都有一个主函数作为程序的入口点,但是Android中并没有一个明确的主窗口,那么在有多个Activity的情况下,最先被执行的是哪个呢?这完全取决于配置文件AndroidMainfest.xml中的配置. 哪个Activity下有下面这段程序,哪个Activity就最先被加载 <intent-filter> <action android:name="android.intent.action.MAIN" /> <category a…
本文来自:http://msdn.microsoft.com/zh-cn/library/bb399393(v=vs.110).aspx http://www.cnblogs.com/zhanglinfan/articles/1457068.html http://hi.baidu.com/ccitofhxxxbenwq/item/b930bca05b49f57f6cd455c6 延迟加载与立即加载 .NET Framework 4.5   其他版本   此主题尚未评级 - 评价此主题   查询…
概述 项目开发中经常会用到方法的延时调用,下面列举常用的几种实现方式: 1.performSelector 2.NSTimer 3.NSThread线程的sleep 4.GCD 1.performSelector [self performSelector:@selector(delayMethod) withObject:nil/*可传任意类型参数*/ afterDelay:2.0]; 此方法是一种非阻塞的执行方式. 取消方法: 第一种: /** * 取消延迟执行 * * @param aTa…
$*********************************************************************************************$ 博主推荐: 风萧兮兮易水寒,"天真"一去兮不复还.如何找到天真的那份快乐.小编倾力推荐app: 天真无谐 下载方式:豌豆荚,应用宝,360手机助手,百度手机助手,安卓,91市场搜索:天真无谐 关注我们:查看详情 $******************************************…
Android中使用WebView, WebChromeClient和WebViewClient加载网页   在android应用中,有时要加载一个网页,如果能配上一个进度条就更好了,而android 中提供了其很好的支持,下面是一个例子程序,先帖: 1 2 3 4 <?xml version="1.0" encoding="utf-8"?> <WebView xmlns:android="http://schemas.android.c…
 延迟执行可以通过以下操作实现,按照推荐的顺序列出来 1. new Handler().postDelayed(new Runnable(){ public void run() { //execute the task } }, delay); 2. mHandler.sendEmptyMessageDelayed(WIFI_GPS_STATE_ON, 4 * 1000);     3.利用定时器 TimerTask task = new TimerTask(){ public void ru…
第一种: [UIView animateWithDuration: delay: options: animations:^{ self.btn.transform = CGAffineTransformMakeTranslation(, ); } completion:^(BOOL finished) { NSLog(@"view animation结束"); }];//不会阻塞线程,animations block中的代码对于是支持animation的代码,才会有延时效果,对于不支…
Android中的事件类型分为按键事件和屏幕触摸事件,Touch事件是屏幕触摸事件的基础事件,有必要对它进行深入的了解.  一个最简单的屏幕触摸动作触发了一系列Touch事件:ACTION_DOWN->ACTION_MOVE->ACTION_MOVE->ACTION_MOVE...->ACTION_MOVE->ACTION_UP 当屏幕中包含一个ViewGroup,而这个ViewGroup又包含一个子view,这个时候android系统如何处理Touch事件呢?到底是 Vie…
阅读书籍: Android开发艺术探索 Android开发进阶从小工到专家 对线程池原理的简单理解: 创建多个线程并且进行管理,提交的任务会被线程池指派给其中的线程进行执行,通过线程池的统一调度和管理使得多线程的使用更简单,高效. 使用线程池的优势: 1.重用线程池中的线程,避免因为线程的创建和销毁所带来的性能开销. 2.能有效控制线程池的最大并发数,避免大量的线程之间因互相抢占系统资源而导致的阻塞现象. 3.能够对线程进行简单的管理,并提供定时执行以及指定间隔循环执行等功能. ThreadPo…
由于网上有朋友对于这个问题已经有了很详细的研究,所以我就不班门弄斧了: 转载于:http://android-performance.com/android/2014/02/10/android-sparsearray-vs-hashmap.html http://liuzhichao.com/p/832.html http://www.codes51.com/article/detail_163576.html 源码: /* * Copyright (C) 2006 The Android O…
在多线程编程的时候,我们经常会用到Handler,Thread和Runnable这三个类,我们来看看这三个类之间是怎么样的关系? 首先说明Android的CPU分配的最小单元是线程,Handler一般是在某个线程里创建的,因而Handler和Thread就是相互绑定的,一一对应. 而Runnable是一个接口,Thread是Runnable的子类.可以说,他俩都算一个进程. HandlerThread顾名思义就是可以处理消息循环的线程,他是一个拥有Looper的线程,可以处理消息循环. 与其说H…
信号量,了解过操作系统的人都知道,信号量是用来做什么的··· 在Android中,已经提供了Semaphore来帮助我们使用~ 那么,在开发中这家伙有什么用呢? 用的地方不多,但是却真的是好用至极! #0 举个栗子 我相信很多人在开发中都会遇到这样的事情:当要对一个资源进行多次数据读取并且修改操作时,会遇到执行的速度快慢不一致导致修改值发生改变的情况. 比如如下代码: private void Start() { for (int i = 10; i >= 0; i--) { LogString…
[转发]作为Android开发人员,我们或多或少都听说过内存泄漏.那么何为内存泄漏,Android中的内存泄漏又是什么样子的呢,本文将简单概括的进行一些总结. 关于内存泄露的定义,我可以理解成这样 没有用的对象无法回收的现象就是内存泄露 如果程序发生了内存泄露,则会带来如下的问题 应用可用的内存减少,增加了堆内存的压力 降低了应用的性能,比如会触犯更频繁的GC 严重的时候可能会导致内存溢出错误,即OOM Error 在正式介绍内存泄露之前,我们有必要介绍一些必要的预备知识. 预备知识1: Jav…
在Android常用编程中,Handler在进行异步操作并处理返回结果时经常被使用.其实这可能导致内存泄露,代码中哪里可能导致内存泄露,又是如何导致内存泄露的呢?那我们就慢慢分析一下.http://www.jinhusns.com/Products/Download/?type=xcj 在Android常用编程中,Handler在进行异步操作并处理返回结果时经常被使用.通常我们的代码会这样实现. public class SampleActivity extends Activity {   …
Android框架提供了很实用的异步处理类.然而它们中的大多数在一个单一的后台线程中排队.当你需要多个线程时你是怎么做的? 众所周知,UI更新发生在UI线程(也称为主线程).在主线程中的任何操作都会阻塞UI更新,因此当需要大量计算时可以使用AsyncTask, IntentService 和 Threads.事实上,在不久前我写了在android中异步处理的8种方式.然而,Android中的AsyncTasks运行在一个单一后台线程并且IntentService也同样如此.因此,开发者应该怎么做…
android中动画可分为三种:帧动画,补间动画,和属性动画.其中属性动画是google推荐的,它可以实现前面两种动画的效果,运用起来更加灵活. 帧动画:顾名思义,就是一帧一帧的图片,快速播放形成的动画. 具体实现步骤如下: 第一:新建一个drawable资源 以animation-list 为根节点创建资源文件. 第二:给ImageView或者其他View设置关联drawable.可以作为background或者src. 第三:在java代码中,通过View.getBackground():或…
原文网址:http://cherishlc.iteye.com/blog/1756762 在Android中调用C++其实就是在Java中调用C++代码,只是在windows下编译生成DLL,在Android中会生成Linux系统下的.so文件(好吧,其实我基本没用过Linux). 没写过JNI的可以看看我之前的博客(Windows下利用Visual Studio开发的过程):http://cherishlc.iteye.com/admin/blogs/1328136 以及自动生成工具swig的…
共5种,单例模式.工厂方法模式.抽象工厂模式.建造者模式.原型模式 单例模式 定义:确保某一个类的实例只有一个,而且向其他类提供这个实例. 单例模式的使用场景:某个类的创建需要消耗大量资源,new一个对象代价太大,如访问IO和数据库等资源,或者避免多次创建该对象消耗内存过多. 懒汉模式 public class Singleton{ private static Singleton instance; private Singleton(){} public static synchronize…
pendingIntent字面意义:等待的,未决定的Intent.要得到一个pendingIntent对象,使用方法类的静态方法 getActivity(Context, int, Intent, int),getBroadcast(Context, int, Intent, int),getService(Context, int, Intent, int)  分别对应着Intent的3个行为,跳转到一个activity组件.打开一个广播组件和打开一个服务组件.参数有4个,比较重要的事第三个和…