繁体   English   中英

为什么要“避免使大型物体穿过活页夹”?

[英]Why “avoid passing large objects through Binder”?

我正在中级阅读Google的“ Android开发”系列-https: //medium.com/google-developers/developing-for-android-vii-the-rules-framework-concerns-d0210e52eee3

在“框架”一章中,它说:“避免将大对象通过活页夹传递—对象在通过活页夹序列化时被复制,因此对象越大,传递对象的过程越长。”

我不确定我是否完全理解。 什么时候发生? 当我在活动之间传递数据时,这是否适用于此?

活动不是活页夹,在一个应用程序的活动之间传递数据没有问题。 当您在流程之间(例如在不同应用程序中的活动或服务之间)传递数据时,请避免使用大对象。

每个进程都有一个大小为1 MB的关联联编程序缓冲区。 一个进程与其他进程具有的所有事务都使用此缓冲区。 因此,自然地,我们应该避免通过活页夹传递非常大的对象,将对象序列化以进行传输将花费更多的时间,而且由于大小限制,事务甚至可能失败,从而提供TransactionTooLargeException, http://developer.android.com/reference/android /os/TransactionTooLargeException.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM