Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 是安卓';s生命周期回调&x27;s被认为是一个;协同程序;?_Android_Coroutine - Fatal编程技术网

Android 是安卓';s生命周期回调&x27;s被认为是一个;协同程序;?

Android 是安卓';s生命周期回调&x27;s被认为是一个;协同程序;?,android,coroutine,Android,Coroutine,用java描述Android的许多基于生命周期的回调是否合适,比如onsaveinstancestatea corroutine?不。它们只是普通函数,在适当的时候在主UI线程消息队列上调用。它们没有任何特殊的yield功能。没有。它们只是普通的功能,在适当的时候在主UI线程消息队列上调用。它们没有任何特殊的收益功能。协同程序基本上可以被认为是“手动”线程吗?(例如,您必须手动确保它们彼此让步,并且玩得很好)而不是在CPU调度级别处理的实际线程。更接近于非先发制人的多任务处理,比如Windows

用java描述Android的许多基于生命周期的回调是否合适,比如
onsaveinstancestate
a corroutine?

不。它们只是普通函数,在适当的时候在主UI线程消息队列上调用。它们没有任何特殊的yield功能。

没有。它们只是普通的功能,在适当的时候在主UI线程消息队列上调用。它们没有任何特殊的收益功能。

协同程序基本上可以被认为是“手动”线程吗?(例如,您必须手动确保它们彼此让步,并且玩得很好)而不是在CPU调度级别处理的实际线程。更接近于非先发制人的多任务处理,比如Windows3.1或MacOS,直到OSX。你能像金毛猎犬一样跟我说话吗?我向你保证我的编程能力不是很好。现在大多数操作系统都是抢先多任务的。这意味着操作系统可以告诉用户停止当前正在运行的应用程序,并随时启动另一个应用程序。非抢占式多任务处理只允许在程序产生处理器时进行应用程序切换——当程序向操作系统调用一组函数中的一个时,这些函数会说“好的,你现在可以运行其他东西了”。例如,disk IO或sleep()。协同路由的想法是相同的,但在应用程序内部,而不是在应用程序之间。非抢占式操作系统在一般用途上已经过时,尽管一些实时操作系统可能仍在使用它。对于PC来说,它有很多缺点,例如,如果一个npe操作系统有一个应用程序进入无限循环,那么整个机器都被锁定了。协同程序基本上可以被认为是“手动”线程吗?(例如,您必须手动确保它们彼此让步,并且玩得很好)而不是在CPU调度级别处理的实际线程。更接近于非先发制人的多任务处理,比如Windows3.1或MacOS,直到OSX。你能像金毛猎犬一样跟我说话吗?我向你保证我的编程能力不是很好。现在大多数操作系统都是抢先多任务的。这意味着操作系统可以告诉用户停止当前正在运行的应用程序,并随时启动另一个应用程序。非抢占式多任务处理只允许在程序产生处理器时进行应用程序切换——当程序向操作系统调用一组函数中的一个时,这些函数会说“好的,你现在可以运行其他东西了”。例如,disk IO或sleep()。协同路由的想法是相同的,但在应用程序内部,而不是在应用程序之间。非抢占式操作系统在一般用途上已经过时,尽管一些实时操作系统可能仍在使用它。对于个人电脑来说,它有很多缺点,例如,如果一个npe操作系统有一个应用程序进入无限循环,那么整个机器就会被锁定。