Android studio 快捷键

 cmd+p 快速查看该方法的参数定义
*
* option + shift +上下 快速移动上下行
*
* cmd + e 显示最近操作的文件
*
* cmd + option +左右 回到之前浏览过的地方
* option + shift +点击 多光标操作
* control +g 多重选择
* f3 添加书签
* cmd +f3 查看书签
*
* cmd + y 在当前页面预览代码
* cmd + option + t 对某行代码进行重构,例如增加if 语句
*
* option + enter 快速提示
  • 多线程操作不要显式调用Thread,使用AsyncTask或者ThreadPoolExecutor

          //执行task
    // new DownLoadTask().execute(); class DownLoadTask extends AsyncTask<Void,Integer,Boolean>{ @Override
    protected void onPreExecute() {
    super.onPreExecute();
    } @Override
    protected Boolean doInBackground(Void... voids) {
    //后台处理返回处理结果
    //更新处理进度
    publishProgress(11);
    return null;
    } @Override
    protected void onProgressUpdate(Integer... values) {
    //进度处理
    } @Override
    protected void onPostExecute(Boolean aBoolean) {
    //结果处理
    }
    }
    private void userThreadPoolExecutor(){
    int NUMBER_CORES = Runtime.getRuntime().availableProcessors();
    int keep_alive = ; BlockingQueue que = new LinkedBlockingDeque();//队列,这里面的任务可以放入int的max个 ArrayBlockingQueue arrque = new ArrayBlockingQueue();//只放入两个任务
    //
    ThreadPoolExecutor executor = new ThreadPoolExecutor(,,keep_alive,
    TimeUnit.SECONDS,arrque,new NameTreadFactory(),new MyIgnorePolicy()); for (int i = ;i < ;i++){
    executor.execute(new MyRunable(""+i));
    } }
    static class NameTreadFactory implements ThreadFactory { private final AtomicInteger mThreadNum = new AtomicInteger(); @Override
    public Thread newThread(Runnable r) {
    Thread t = new Thread(r, "my-thread-" + mThreadNum.getAndIncrement());
    System.out.println(t.getName() + " has been created");
    return t;
    }
    }
    public static class MyIgnorePolicy implements RejectedExecutionHandler { public void rejectedExecution(Runnable r, ThreadPoolExecutor e) {
    doLog(r, e);
    } private void doLog(Runnable r, ThreadPoolExecutor e) {
    // 可做日志记录等
    Log.d("tag",r.toString() + " rejected");
    // System.out.println("completedTaskCount: " + e.getCompletedTaskCount());
    }
    }
    class MyRunable implements Runnable {
    private String name; public MyRunable(String name){
    this.name = name;
    } @Override
    public void run() {
    try {
    System.out.println(this.toString() + " is running!");
    Thread.sleep(); //让任务执行慢点
    } catch (Exception e) {
    e.printStackTrace();
    }
    } public String getName() {
    return name;
    } @Override
    public String toString() {
    return "My task---[name==="+name+" ]";
    }
    }
												

最新文章

  1. ASP.NET Web API 管道模型
  2. JavaScript从父页面获取子页面的值(子页面又如何访问父页面)
  3. 使用 screen 管理你的远程会话
  4. HDU 1264 Counting Squares(线段树求面积的并)
  5. 上传图片预览 支持IE8+,FF,Chrome ,保留原图片比例
  6. Map的迭代操作
  7. Linux怎样修改系统时间
  8. 浅谈web前端就业的学习路线
  9. 在 Windows系统中编译node.js 源代码
  10. ubuntu下无法打开windows下ntfs文件系统的解决方法
  11. 2017 年不可错过的开发工具 Top 50
  12. HDU2571 命运 动态规划
  13. 四色GDOI&amp;GDOI2015滚粗记
  14. 安装与配置cacti 0.8.8b
  15. freemarker.template.TemplateException:Error executing macro:mainSelect
  16. 20.如何从app业务逻辑提炼api接口
  17. [Python数据挖掘]第4章、数据预处理
  18. Shiro学习
  19. echarts和highcharts比较
  20. 【转】escape()、encodeURI()、encodeURIComponent()区别详解

热门文章

  1. top中的wa的理解
  2. odoo开发笔记 -- 多个子类继承同一个父类方法的执行顺序
  3. EasyRTMP推送扩展支持HEVC(H265) RTMP推送之Metadata结构填写详解
  4. 【linux学习笔记六】压缩 解压缩命令
  5. ajax中参数traditional的作用
  6. Windows10不能进入睡眠
  7. objectARX2010及其以上版本使用publish打印(发布)图纸,后台布局打印图纸例子浅析
  8. 最新 物易云通java校招面经 (含整理过的面试题大全)
  9. 【原创】C++STL multiset
  10. linux shell 获取文件夹全文绝对路径