【发布时间】:2021-09-02 14:58:30
【问题描述】:
在一次采访中,question 被问到。
我们有10 thread 和100 task。每个任务箱Objects。当资源被高度使用时,我们必须限制Object creation 的数量。他们问
- 您将如何识别,因为
object getting created如此之多,因此您的资源被高度使用。 - 当资源被高度使用时,您将如何限制
creation of object。 - 由于
object getting created很多,当它们被闲置时,gc()也在行动。有时它会抛出错误gc used exceeded。
我试过但无法正确回答。他们拒绝了。
您能指导我思考解决方案吗?我的意思是我什至没有得到它的线索。
【问题讨论】:
-
公司名称我已经改了,但是公司是同一级别的,或者你可以说比亚马逊更大的品牌:)
-
[无论是哪家公司] 是否要求你不要讨论你在面试中听到的事情?
-
公司无所谓。而给出“更大”之类的细节听起来只是在吹牛,让我们找出它是哪家公司。不管怎样,这对你不利。
-
这类问题的问题在于,唯一能知道“正确”答案的人是面试官问你的。那些面试官通常想要的是至少听到/看到你对这个问题的看法。 eG:如果你说第一步是回到绘图板上,看看有没有比创建数千个临时对象只让 GC 立即处理它们更好的解决方案,他们可能会很高兴。或者也许他们会讨厌这个答案。问题是我们真的不知道他们对一个好的答案的期望是什么。
-
@OHGODSPIDERS 真的..非常感谢。
标签: java multithreading object java-8 concurrency