Я не юрист и не могу давать юридические советы по использованию или лицензированию.
Но у меня есть вопрос: Вы рассматривали использование версии Intel TBB с открытым кодом? Она доступна по лицензии GPLv2 and for the runtime exception.
И как там написано, если что-то непонятно, то лучше обратиться к своему юристу («Hopefully that text is self-explanatory. If it isn't, you need to speak to your lawyer, or the Free Software Foundation.»)
Чтобы понять, если ли утечка памяти или нет, необходимо в большом цикле повторить выделение/освобождение памяти. Если память потечет — это будет отчетливо видно в диспетчере задач. А то, что аллокатор закэшировал кусок памяти — это ни о чем не говорит. Как было написано, он может использовать этот буфер для выделения маленьких блоков.
Код получится типа такого:
int main(void)
{
const int blockCount = 1024;
const int blockSize = 1024*1024;
char **buf;
for (int q=0; i<100000; i++)
{
buf = (char**)malloc(blockCount*sizeof(char*));
for (int i=0; i<size; i++)
{
buf[i] = (char*)malloc(blockSize*sizeof(char));
}
for (int i=0; i<size; i++)
{
free(buf[i]);
}
free(buf);
}
printf("Hit something...\n");
printf("Memory freed\n");
getchar();
return 0;
}
Я не юрист и не могу давать юридические советы по использованию или лицензированию.
Но у меня есть вопрос: Вы рассматривали использование версии Intel TBB с открытым кодом? Она доступна по лицензии GPLv2 and for the runtime exception.
И как там написано, если что-то непонятно, то лучше обратиться к своему юристу («Hopefully that text is self-explanatory. If it isn't, you need to speak to your lawyer, or the Free Software Foundation.»)
--Владимир
--Владимир
Код получится типа такого:
--Владимир