Предполагая, что у меня есть класс, который выполняет некоторую тяжелую обработку, работая с несколькими коллекциями. Я хочу сделать это, чтобы убедиться, что такая операция не может привести к нехватке памяти или даже лучше. Я хочу установить порог того, сколько памяти он может использовать.
class MyClass()
{
public void myMethod()
{
for(int i=0; i<10000000; i++)
{
// Allocate some memory, may be several collections
}
}
}
class MyClassTest
{
@Test
public void myMethod_makeSureMemoryFootprintIsNotBiggerThanMax()
{
new MyClass().myMethod();
// How do I measure amount of memory it may try to allocate?
}
}
Каков правильный подход? Или это невозможно/невозможно?