草庐IT

clearing

全部标签

java - 如何在列表数据结构中编写 clear() 方法?

我最近阅读了一些框架源代码,并注意到他们编写了类似列表的数据结构的clear()方法。一个一个地删除元素。while(_arr.length>0){remove(_arr[0]);}(也许上面看起来有点困惑,但这是因为该语言本身的原生数组类型是动态数组)或for(inti=0;i但我记得我写过一些这样的代码。列表修饰了原生数组类型,我写了这样的clear()方法。_arr=newArray();_size=0;直接实例化一个新的原生数组类型。并且此代码是用具有垃圾收集功能的语言编写的。所以我认为所有元素最终都会被收集,那么为什么需要一个循环?一个新的会很快吗?

java - 如何在列表数据结构中编写 clear() 方法?

我最近阅读了一些框架源代码,并注意到他们编写了类似列表的数据结构的clear()方法。一个一个地删除元素。while(_arr.length>0){remove(_arr[0]);}(也许上面看起来有点困惑,但这是因为该语言本身的原生数组类型是动态数组)或for(inti=0;i但我记得我写过一些这样的代码。列表修饰了原生数组类型,我写了这样的clear()方法。_arr=newArray();_size=0;直接实例化一个新的原生数组类型。并且此代码是用具有垃圾收集功能的语言编写的。所以我认为所有元素最终都会被收集,那么为什么需要一个循环?一个新的会很快吗?

java - org.hibernate.Session.clear() 被认为是有害的?

这是一个设计问题,具体代码未提交保护我的底。使用Hibernate时,标准工作流程如下:公开课开始交易做生意(读取和修改数据)提交交易关闭session可能迭代到2-4次。Session.clear()的合理用例是什么?A:我遇到的具体问题是一段(大)代码,它加载和修改实体,然后clear()session,基本上丢弃所做的更改。(要完成的业务任务不包括修改实体,所以代码“工作”)。在我看来,正确的设计是确保(大)代码段不会进行它不想保存的更改?B:我猜Session.clear()的存在是为了方便/灵活,而不是因为使用它是个好主意。我误解了Hibernate的哲学吗?C:子问题:框架

java - org.hibernate.Session.clear() 被认为是有害的?

这是一个设计问题,具体代码未提交保护我的底。使用Hibernate时,标准工作流程如下:公开课开始交易做生意(读取和修改数据)提交交易关闭session可能迭代到2-4次。Session.clear()的合理用例是什么?A:我遇到的具体问题是一段(大)代码,它加载和修改实体,然后clear()session,基本上丢弃所做的更改。(要完成的业务任务不包括修改实体,所以代码“工作”)。在我看来,正确的设计是确保(大)代码段不会进行它不想保存的更改?B:我猜Session.clear()的存在是为了方便/灵活,而不是因为使用它是个好主意。我误解了Hibernate的哲学吗?C:子问题:框架

java - Intent.FLAG_ACTIVITY_CLEAR_TASK 的替代方案

我有两个应用App-B启动App-A。如果用户从AppA内部启动AppB,我会在App-A上调用完成,所以我没有问题。如果用户从应用程序抽屉或长按主页按钮直接进入应用程序B,那么我执行以下操作,在应用所有附加功能之前先清除应用程序A中的任务。这具有预期的效果,但仅适用于API11。在较低的API上,APP-A中的新任务不会改变,额外的putExtra将无效。FLAG_ACTIVITY_CLEAR_TASK的任何替代方案?对于APIIntenti=newIntent("com.App-A");i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);i.addF

java - Intent.FLAG_ACTIVITY_CLEAR_TASK 的替代方案

我有两个应用App-B启动App-A。如果用户从AppA内部启动AppB,我会在App-A上调用完成,所以我没有问题。如果用户从应用程序抽屉或长按主页按钮直接进入应用程序B,那么我执行以下操作,在应用所有附加功能之前先清除应用程序A中的任务。这具有预期的效果,但仅适用于API11。在较低的API上,APP-A中的新任务不会改变,额外的putExtra将无效。FLAG_ACTIVITY_CLEAR_TASK的任何替代方案?对于APIIntenti=newIntent("com.App-A");i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);i.addF

c++ - vector::clear 在 libc++ 中用于简单可破坏的类型

会vector>::clear()是O(1)如果T是微不足道的可破坏的吗?gcc在bits/stl_vector.h中的实现电话std::_Destroy(bits/stl_construct.h)。此实现优化了T可通过在std::is_trivially_destructible上进行标签分派(dispatch)而被轻易破坏的情况。.查看llvm(3.5.0)的实现,vector::clear电话std::allocator::destroy在每个元素上,依次调用析构函数。_LIBCPP_INLINE_VISIBILITYvoiddestroy(pointer__p){__p->~_

ios - 在沙盒模式下出现的非 "Cleared For Sale"的 App Purchase 产品

我有一些未在iTunesConnect中销售的应用内购买项目。我的目标是能够在应用程序启动后根据需要启用和禁用它们。但是,当我在沙盒模式下进行测试时,所有这些产品都会出现。我曾假设SKProductsResponse会在其invalidProductIdentifiers方法中返回任何无效产品。这是SandBox和生产模式之间的区别吗?即使这些产品未获准销售,它们也会一直出现吗? 最佳答案 是的,有区别。我刚刚发布了我的应用程序版本,它检查11种不同的IAP,其中只有4种获得批准。其中,只有1个是“获准出售”。因此,在产品中,只有1

Java 安全 : how to clear/zero-out memory associated with an object?(和/或确保这是特定变量的唯一实例/副本)

我正在讨论如何保护存储在Java程序中的敏感信息(例如密码)。根据安全要求,清除包含敏感信息的内存,例如通过将字节的值设置为全零。问题是攻击者可以观察到与应用程序进程关联的内存,因此我们希望尽可能地限制此类敏感信息存在的时间窗口。以前项目涉及到C++,所以一个memset()就足够了。(顺便说一句,memset()的使用受到了质疑,因为已知一些编译器会优化它的使用,基于这样的假设,即由于以后不使用内存,因此无需首先将它归零。对于那些在谷歌上搜索“memset”和“clearmemory”等的人来说,这个简介是免责声明。现在我们手头有一个Java项目正在满足这个要求。对于Java对象,我

c++ - 我如何 "clear"std::promise?

我有一个程序,它应该循环启动8个线程,这些线程将使用std::promise返回一个值。所以我想我需要创建一个包含8个promise对象的vector,获取它们的future,并使用这些promise返回值和然后join与main的线程。问题是:在下一次迭代中,我将再创建8个线程——我可以重用相同的promise对象,还是需要再创建8个?我还没有找到在Internet上重用它们的任何方法,但也许我遗漏了一些明显的东西? 最佳答案 要重用promise,只需重新分配它们即可。std::promisemy_promise;//useth