android线程优先级大小,android 设置线程优先级 两种方式
1) android.os.Process.setThreadPriority (int priority)或android.os.Process.setThreadPriority (int tid, int priority)priority:【-20, 19】,高优先级 -> 低优先级.(2)java.lang.Thread.setPriority (int priority)priority:【1, 10】,低优先级 -> 高优先级.测试后发现,使用android本身的API(第1种方法)设置的优先级,对线程调度影响显著.java
------------------------------------------------android
import android.app.Activity;
import android.os.Bundle;
import android.os.Process;
import android.util.Log;
public class TestThreadPriority extends Activity {
private static final String TAG = "TestThreadPriority";
private boolean mNeedExit = false;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MyThread a = new MyThread("Thread A");
a.setOSPriority(Process.THREAD_PRIORITY_LOWEST); // 19
a.setPriority(Thread.MAX_PRIORITY); // 10
MyThread b = new MyThread("Thread B");
b.setOSPriority(Process.THREAD_PRIORITY_URGENT_AUDIO); // -19
b.setPriority(Thread.MIN_PRIORITY); // 1
a.start();
b.start();
}
@Override
public void onBackPressed() {
mNeedExit = true;
super.onBackPressed();
}
private class MyThread extends Thread {
private int mOSPriority = Process.THREAD_PRIORITY_DEFAULT;
private int mLoopCount = 0;
public MyThread(String threadName) {
super(threadName);
}
public void setOSPriority(int p) {
mOSPriority = p;
}
@Override
public void run() {
Process.setThreadPriority(mOSPriority);
while (!mNeedExit) {
mLoopCount++;
Math.log(Math.random() * 1000); // calculation test
Log.d(TAG,
new StringBuilder().append(getName())
.append(" os priority: ").append(mOSPriority)
.append(" java priority: ")
.append(getPriority()).append(" loop count: ")
.append(mLoopCount).toString());
}
Log.d(TAG,
new StringBuilder().append(getName()).append(" exiting...")
.append(" os priority: ").append(mOSPriority)
.append(" java priority: ").append(getPriority())
.append(" loop count: ").append(mLoopCount)
.toString());
}
}
}
android线程优先级大小,android 设置线程优先级 两种方式相关推荐
- android布局密码,Android中EditText显示明文与密码的两种方式
效果图如下所述: 布局 xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="h ...
- Android中实现SQLite数据库CRUD操作的两种方式
Android中实现SQLite数据库CRUD操作的两种方式 SQLite是一款轻量级的关系型数据库,具有运行速度.占用资源少的特点.通常只需要几百KB的内存就够了,因此特别适合在移动设备上使用.SQ ...
- Android之从网络上获取图片的两种方式讲解:thread+handle和AsyncTask方式
从网络上获取图片是一个比较耗时的操作,放在主线程会导致阻塞主线程,响应超时,所以我们不能把它放在主线程里操作,必须放在一个子线程里,我打算采用两种方式去实现.1.采用thread去获取图片,获取到后通 ...
- linux耳机插拔检测,Android应用开发之耳机插拔处理两种方式
本文将带你了解Android应用开发[RK3288][Android6.0] 耳机插拔处理两种方式,希望本文对大家学Android有所帮助. [RK3288][Android6.0] 耳机插拔处理 ...
- android获取ip方法,Android开发准确获取手机IP地址的两种方式
最近看了好多网上获取IP地址的例子,发现好多都不完全准确,这里我写一下获取ip地址的两种方式. 比如微信支付,后台在做接口的时候,要求App端传入IP地址,我们需要判断是网络环境,WI-FI还是3G, ...
- Android中界面实现全屏显示的两种方式
在开发android的应用当中,我们会遇到将一些界面设置为全屏显示的格式,有两种实现的方法.其一是在Java代码中实现,其二是在配置文件中实现. 1. 在Java代码中设置 super.onCreat ...
- android recocery模式,小米进入Recovery模式的两种方式
刷机分为卡刷和线刷,卡刷的话必须得进入recovery模式,其中需要运用到某些按键的组合,刷机帮小编特意整理了小米进入recovery模式的方法,各位可以参考下: 小米如何进入Recovery的两种方 ...
- JS设置样式的两种方式
a) ClassName/style------DOM的style属性只能获取标签中使用style设置的样式,无法获取潜入或者外部样式,style.cssText获取style里面的字符串(只能在行内 ...
- JAVA设置代理的两种方式(HTTP和HTTPS)
一.直接设置系统属性,设置后所有网络请求都有效 System.setProperty("proxyType", "4");System.setProperty( ...
- Android通过AsyncTask与ThreadPool(线程池)两种方式异步加载大量数据的分析与对比
在加载大量数据的时候,经常会用到异步加载,所谓异步加载,就是把耗时的工作放到子线程里执行,当数据加载完毕的时候再到主线程进行UI刷新.在数据量非常大的情况下,我们通常会使用两种技术来进行异步加载,一是 ...
最新文章
- 工作 10 年后转行程序员,如今 35+ 岁并不焦虑!
- 在Eclipse中制作SSH配置文件提示插件
- Mysql+Mybatis分页查询——数据库系列学习笔记
- 计算机体系结构----常见英文缩写(待更....)
- Java项目课程04:需求分析
- 020-python函数和常用模块-文件操作
- 修复Windows10系统的注册表?
- 5分钟了解MySQL5.7的Online DDL雷区
- matlab红字怎么删除,matlab-系统爱好者
- 免费在线打字练习网站
- IEEE754-2008 标准详解(五):异常
- Windows下文本文件编码转换
- 智能暖风机——7.LED驱动和断电记忆功能
- android高仿微信表情输入与键盘输入(详细实现分析)
- 聚焦AWE2020 看小家电行业“风往哪吹”
- 看MindSpore加持下,如何「炼出」首个千亿参数中文预训练语言模型?
- 谷歌动态验证码二次验证ssh
- 科技交流英语(2022秋)Unit 6 test
- CVPR 2018 论文解读集锦
- S型函数:Sigmoid 函数
热门文章
- html流动海报css,海报网css代码怎样把模块移到右面?最好把代码直接给我!嘿嘿。...
- dedecms 在模板里引入php文件夹,dedecms如何添加并引入php文件
- ase支持 urp不_urp管线的自学hlsl之路 第一篇 序言
- 详解4种经典的限流算法
- 忘记MySQL密码怎么办?一招教你搞定!
- 字符串操作的12个小技巧!
- DES和AES加密:指定键的大小对于此算法无效
- Linux debian设置主机不休眠教程
- windows7系统安装更新补丁提示0x80240037错误如何解决,文件的后缀名怎么换?
- 部署虚拟环境安装Linux系统(Linux就该这么学)笔记