static bool lowMemDetect()
{
#define MIN_MEM_FREE 25000 //KB
#define MIN_SWAP_FREE 2000 //KB
int memfree = 320000, swapfree = 128000;
char s_line[64] = {0};
FILE *pt_file = fopen("/proc/meminfo","r");
if(pt_file == NULL)
{
return false;
}
while(fgets(s_line,sizeof(s_line), pt_file) != NULL)
{
sscanf(s_line, "MemFree:%d", &memfree);
sscanf(s_line, "SwapFree:%d", &swapfree);
if(memfree<MIN_MEM_FREE && swapfree<MIN_SWAP_FREE)
{
fclose(pt_file);
AM_DBG_ERROR("Low Memory Detect: memfree = %d, swapfree = %d\n", memfree, swapfree);
return true;
}
}
//AM_DBG_ERROR("TEST: memfree = %d, swapfree = %d\n", memfree, swapfree);
fclose(pt_file);
return false;
}
No comments:
Post a Comment