mirror of
https://github.com/ioacademy-jikim/debugging
synced 2025-06-10 01:16:12 +00:00
32 lines
792 B
C
32 lines
792 B
C
// When we cull and compute the new minimum time between snapshots, we want
|
|
// to ignore any gap between two uncullable snapshots, because it is not
|
|
// representative. This program tests that.
|
|
|
|
|
|
#include <stdlib.h>
|
|
|
|
int main(void)
|
|
{
|
|
int i;
|
|
|
|
// The peak is from the first allocation.
|
|
int* x = malloc(1024);
|
|
free(x);
|
|
|
|
// Now do an allocation to provide the post-peak baseline.
|
|
malloc(512);
|
|
|
|
// Now we do lots of allocations below the peak. With the proper
|
|
// handling, the allocations should still be smoothly distributed.
|
|
// Without it, the snapshots in the second half of the graph would be
|
|
// clustered much more closely than those in the first half.
|
|
//
|
|
|
|
for (i = 0; i < 350; i++) {
|
|
int* y = malloc(256);
|
|
free(y);
|
|
}
|
|
|
|
return 0;
|
|
}
|