android线程池
来源:互联网 发布:阴茎抽筋知乎 编辑:程序博客网 时间:2024/06/06 00:48
线程池的小demo,自己是新手,做一下笔记
package com.example.testthread;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.ThreadPoolExecutor;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.app.Activity;
import android.view.Menu;
import android.widget.LinearLayout;
import android.widget.SeekBar;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
LinearLayout l;
List<TextView> list=new ArrayList<TextView>();
List<SeekBar> list1=new ArrayList<SeekBar>();
Handler h=new Handler(){
@Override
public void handleMessage(Message msg) {
// TODO Auto-generated method stub
super.handleMessage(msg);
int p=0;
if(msg.what>100){
p=100;
}else{
p=msg.what;
}
System.out.println("线程:"+msg.getData().getInt("k")+" 值:"+msg.what);
list.get(msg.getData().getInt("k")).setText(msg.getData().getInt("k")+" : "+p+"");
list1.get(msg.getData().getInt("k")).setProgress(p);
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
l=(LinearLayout)findViewById(R.id.ll);
for (int i = 0; i < 10; i++) {
list.add(new TextView(this));
list.get(i).setText(i+" : "+"0");
list1.add(new SeekBar(this));
list1.get(i).setMax(100);
list1.get(i).setProgress(0);
l.addView(list.get(i));
l.addView(list1.get(i));
}
ExecutorService t=Executors.newFixedThreadPool(2);
for (int i = 0; i < 10; i++) {
final int k=i;
t.execute(new Runnable() {
@Override
public void run() {
int n=0;
h.post(new Runnable() {
@Override
public void run() {
Toast.makeText(MainActivity.this, "线程 "+k+" 开始执行", 1000).show();
}
});
while (n<100) {
try {
n+=Math.random()*10;
Thread.sleep(200);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Message m=new Message();
m.what=n;
Bundle b=new Bundle();
b.putInt("k", k);
m.setData(b);
h.sendMessage(m);
}
}
});
System.out.println("*");
}
}
}
0 0
- Java(线程)Android线程池
- Android线程,线程池相关
- Android 线程和线程池
- Android线程与线程池
- Android线程和线程池
- Android 线程和线程池
- Android线程和线程池
- Android线程与线程池
- Android线程和线程池
- Android线程与线程池
- Android 线程和线程池
- Android线程和线程池
- Android线程和线程池(四)--Android线程池
- Android ExecutorService线程池
- Android 线程池管理 .
- Android 线程池管理
- Android ExecutorService线程池
- Android 线程池管理
- ML基石_7_VC
- 华为机试——CandyBrush游戏
- pat 1096 Consecutive Factors
- linux上SVN解决冲突命令
- KMP算法(C++实现)
- android线程池
- 用便宜的改装件裸板远程wifi智能控制电器
- c#通过代码触发按键点击事件
- iOS注册本地通知、取消本地通知 - 家柱
- 最流行的android组件大全
- Ubuntu下如何解压缩zip,tar,tar.gz,tar.bz2文件
- pythonWeb编程提交表单方法
- 有哪些 Android 大牛的 blog 值得推荐?
- Python Whois client example