当前位置: 首页 > wzjs >正文

烟台哪家公司可以做网站山东住房与城乡建设网站

烟台哪家公司可以做网站,山东住房与城乡建设网站,一个网站能用asp c,网站常见的风格1. Kotlin协程(官方推荐,最现代化) 适用场景:几乎全部异步任务(网络请求、数据库、耗时计算等) 优点:轻量级、自动线程切换、避免回调地狱、完美支持生命周期 示例: kotlin // 在…

1. Kotlin协程(官方推荐,最现代化)

适用场景:几乎全部异步任务(网络请求、数据库、耗时计算等)
优点:轻量级、自动线程切换、避免回调地狱、完美支持生命周期
示例

kotlin

// 在Activity/Fragment中(需引入lifecycle-ktx)
lifecycleScope.launch {// 默认在主线程执行val result = withContext(Dispatchers.IO) { // 切换到IO线程// 子线程执行耗时操作(如网络请求)fetchDataFromNetwork()}textView.text = result // 自动切回主线程更新UI
}

关键点

  • Dispatchers.IO:适合磁盘/网络IO操作

  • Dispatchers.Default:适合CPU密集型计算

  • lifecycleScope:自动绑定生命周期,避免内存泄漏


2. Thread + Handler(传统基础方案)

适用场景:简单后台任务,需要兼容老代码
示例

java

// 开启子线程
new Thread(() -> {// 在子线程执行耗时任务String result = doHeavyWork();// 通过Handler切回主线程更新UInew Handler(Looper.getMainLooper()).post(() -> {textView.setText(result);});
}).start();

缺点:需手动管理线程,复杂场景易出错


3. ExecutorService(线程池)

适用场景:需要控制并发数量的任务(如下载多个文件)
示例

java

// 创建固定大小的线程池(4个线程)
ExecutorService executor = Executors.newFixedThreadPool(4); // 提交任务
executor.execute(() -> {// 子线程执行任务String data = fetchData();runOnUiThread(() -> { // 切回主线程textView.setText(data);});
});// 关闭线程池(通常在onDestroy中)
executor.shutdown();

优点:复用线程资源,避免频繁创建/销毁开销


4. RxJava(响应式编程)

适用场景:复杂异步任务链(需额外引入库)
示例

java

Observable.fromCallable(() -> {// 子线程执行return fetchData();
})
.subscribeOn(Schedulers.io()) // 指定子线程执行
.observeOn(AndroidSchedulers.mainThread()) // 切回主线程
.subscribe(data -> {textView.setText(data); // 主线程更新UI
});

5. AsyncTask(已废弃,仅了解)

java

// ❌ 已废弃!仅用于理解旧代码
private class MyTask extends AsyncTask<Void, Void, String> {@Overrideprotected String doInBackground(Void... voids) {return fetchData(); // 子线程执行}@Overrideprotected void onPostExecute(String result) {textView.setText(result); // 主线程更新UI}
}
// 启动方式
new MyTask().execute();

关键注意事项

  1. UI线程规则

    • 只有主线程能更新UI,子线程必须通过以下方式切回:

      kotlin

      // Kotlin
      withContext(Dispatchers.Main) { /* 更新UI */ }
      // Java
      runOnUiThread(() -> { /* 更新UI */ });
  2. 内存泄漏

    • 在Activity/Fragment中使用协程时,务必用lifecycleScopeviewModelScope

    • 避免匿名内部类持有外部引用(如非静态Handler)

  3. 线程选择

    场景推荐调度器
    网络请求/文件读写Dispatchers.IO
    CPU密集型计算Dispatchers.Default
    数据库(Room)无需指定,Room自动优化

终极选择建议

  • 新项目:无脑选 Kotlin协程viewModelScope/lifecycleScope

  • 老项目

    • 简单任务:Thread + Handler

    • 复杂并发:ExecutorService

    • 已有RxJava:继续使用

    • 协程示例

      // 在ViewModel中
      class MyViewModel : ViewModel() {private val _data = MutableLiveData<String>()val data: LiveData<String> = _datafun loadData() {viewModelScope.launch {_data.value = "Loading..."try {val result = withContext(Dispatchers.IO) {// 模拟网络请求delay(2000)"加载完成"}_data.value = result} catch (e: Exception) {_data.value = "Error: ${e.message}"}}}
      }


文章转载自:

http://htWJFQ4D.rLhjg.cn
http://mtiuLiPi.rLhjg.cn
http://VjPmVPA8.rLhjg.cn
http://Kj3MXMY8.rLhjg.cn
http://bYjpJl8X.rLhjg.cn
http://Clug4PYI.rLhjg.cn
http://8fVKzPGj.rLhjg.cn
http://yeFxPamL.rLhjg.cn
http://BhRBIzSw.rLhjg.cn
http://zJsIwv0h.rLhjg.cn
http://wnvC1a29.rLhjg.cn
http://2aDSslDQ.rLhjg.cn
http://DwmJzgMY.rLhjg.cn
http://uwfVLyaK.rLhjg.cn
http://TAAsmQiV.rLhjg.cn
http://reO1YoGP.rLhjg.cn
http://XoJcwUBd.rLhjg.cn
http://rcZxpe3p.rLhjg.cn
http://inmAbUHX.rLhjg.cn
http://5knsqSs3.rLhjg.cn
http://988JxfhW.rLhjg.cn
http://TaPFjbcP.rLhjg.cn
http://7lPilSHZ.rLhjg.cn
http://UOrhkrbh.rLhjg.cn
http://ls7PZksA.rLhjg.cn
http://rHnhZ1CP.rLhjg.cn
http://qKDP0wrt.rLhjg.cn
http://aGWJ5Dyt.rLhjg.cn
http://rhn2uCR4.rLhjg.cn
http://MTb7q8im.rLhjg.cn
http://www.dtcms.com/wzjs/628929.html

相关文章:

  • 工业和信息网站备案管理系统seo程序
  • 学校网站建设的意见百度广告联盟官网
  • 专门做婚姻法的网站买网站
  • 做消费信贷网站价格wordpress投稿 图片
  • 网站规划可以分成哪几步申请域名流程后怎样做网站
  • 理财公司网站建设方案php软件安装
  • 网站备案归哪里管天猫电商平台
  • wordpress建站详细教程视频做网站为什么要做备案接入
  • AAP网站开发需要多少钱做公众号一个月挣多少钱
  • 网站添加留言板功能十大舆情网站
  • 企业网站定制开发流程开一家网店
  • 优质网站建设公司哪家好深圳住房建设局官方网站
  • 越秀营销型网站产品单页网站
  • 挂机宝如何做网站企业管理培训课程培训机构
  • 建设人才库网站在线天堂おっさんとわたし
  • 衡水购物网站制作长沙推广软件
  • 做淘宝客网站哪个好用个人 申请域名做网站
  • 三亚h5网站定制开发公司建立一个个人介绍网站
  • ii6创建网站武夷山市建设局网站
  • 宁波网络建站模板广州网页设计html
  • 免费网站优化软件莱芜最好的网站建设公司
  • 深圳给企业做网站营销机构代码怎么填
  • 怎么建设网站平台网站怎么发邮件
  • 做自媒体一般都注册几个网站郑州企业网站排名
  • dw做的个人网站wordpress密码忘记
  • 南通做网站价格广州制片公司网站
  • 网站建设公司保定市手机建设中网站首页
  • 长沙建站模板平台合肥最新通知今天
  • 网站模板源码下载网数字营销证书
  • 网站代码的重点内容是什么万能应用商店下载