zoukankan      html  css  js  c++  java
  • Android 数据库的线程合作

      前言:之前琢磨了很多线程相关的东西,一直摸不着头脑,直到学到了数据库,终于发现世界原来如此美好,任何事物都有存在的理由。

      1.主线程,我把它比作长江,作为母亲河的长江,想必大家每个人都不会很陌生。

      2.后台线程,我把它比作支流,当然支流可以有很多很多,为了辅助长江的压力,自己就产生了。

      3.我们很多时候是作为一个用户的角度,看到的只是美丽的长江,殊不知它的背后有很多支流对它产生的影响。

      4.更新视图给用户,在长江的主线程里面进行,用户只会说,长江好漂亮哦,所以看到的就是主体。

      5.数据库的交互呢,在分支中进行,为了辅助主干完成更多事情,类似于人的血管,每天都会交互很多东西。

      6.AsyncTask是一条回流,在外部进行数据库操作,最终还是要回到主线程。怎么从后台更新数据库呢?用onPreExecute()函数即可完成,它在分支处,已经到分流处的初始部分了,算作子线程中。这个AsyncTask中的函数,要操作数据库前,拿走家中的“信物”,就是视图中的一些信息,在doInBackground函数中进行数据库操作,这里就是在后台线程中运行数据库的代码部分了,和实际的数据库SQLiteOpenHelper有关系。在回流处执行onPostExecute方法,在屏幕上显示,这一路披荆斩棘,可是数据库代码依然没有成功运行,Toast一下,传递消息给用户。

      主要路线就是-----onPreExecute-----doInBackground-----onProgressUpdata-----onPostExecute

      执行地方        -----主线程          -----刚好进入后台   -----主线程                  -----主线程

      7.昨天写了很多绘声绘色的故事,可以睡前忘记保存,早上起来也不想重新写一遍了,故很气,仅此而已。

         早安!2017-7-9 7:06

    既然选择了,便不顾风雨兼程。Just follow yourself.
  • 相关阅读:
    聚类分析理论之TwoSteps理论篇+实践篇【转载】
    游戏运营杂谈之——>怎么做一份数据日报【转载】
    名词解释CPC、CPM、CPA.......【转载】
    小白学数据分析>数据指标 累计用户数的使用
    Clementine的源节点学习【转载】
    在clementine基于两步聚类算法的次日留存分析探索【转载】
    百度联盟与Google AdSense的比较【转载】
    SAS:商业智能从BI走向BA
    11、位段
    3、SHELL控制语句
  • 原文地址:https://www.cnblogs.com/Jason-Jan/p/7135648.html
Copyright © 2011-2022 走看看