Show elapsed time while building action list
This commit is contained in:
15
src/main.c
15
src/main.c
@@ -60,10 +60,13 @@ int main(int argc, char *argv[]) {
|
||||
}
|
||||
} else if (!strcmp(argv[1], "scan") && argc == 4) {
|
||||
// Scanear informacion de directorio y guardar arbol
|
||||
long long tScan=Time_GetTime();
|
||||
FileNode *fileNode;
|
||||
printf("Building FileNode..\n");
|
||||
fileNode = FileNode_Build(argv[2]);
|
||||
FileNode_Save(fileNode, argv[3]);
|
||||
tScan=Time_GetTime()-tScan;
|
||||
printf("tScan: %9lldus\n",tScan);
|
||||
} else if (!strcmp(argv[1], "rescan") && argc == 4) {
|
||||
// Scanear informacion de directorio y guardar arbol
|
||||
FileNode *fileNode;
|
||||
@@ -71,7 +74,10 @@ int main(int argc, char *argv[]) {
|
||||
fileNode = FileNode_Load(argv[3]);
|
||||
if (fileNode) {
|
||||
printf("Rebuilding FileNode..\n");
|
||||
long long tScan=Time_GetTime();
|
||||
fileNode = FileNode_Refresh(fileNode, argv[2]);
|
||||
tScan=Time_GetTime()-tScan;
|
||||
printf("tScan: %9lldus\n",tScan);
|
||||
FileNode_Save(fileNode, argv[3]);
|
||||
}
|
||||
} else if (!strcmp(argv[1], "read") && argc == 3) {
|
||||
@@ -126,12 +132,15 @@ FileNode *CheckDir(char *path, int recheck) {
|
||||
snprintf(dirNodesFile, MaxPath, "%s/"FileNode_Filename, path);
|
||||
if (recheck) {
|
||||
printf("Checking Directory.. %s\n", path);
|
||||
long long tScan=Time_GetTime();
|
||||
fileNode = FileNode_Load(dirNodesFile);
|
||||
if (fileNode) {
|
||||
fileNode = FileNode_Refresh(fileNode, path);
|
||||
} else {
|
||||
fileNode = FileNode_Build(path);
|
||||
}
|
||||
tScan=Time_GetTime()-tScan;
|
||||
printf("tScan: %9lldus\n",tScan);
|
||||
FileNode_Save(fileNode, dirNodesFile);
|
||||
} else {
|
||||
printf("Loading Directory.. %s\n", path);
|
||||
@@ -182,9 +191,12 @@ int Sync(char *pathLeft, char *pathRight, int recheck, int dryRun) {
|
||||
}
|
||||
|
||||
// Construir acciones
|
||||
long long tBuild=Time_GetTime();
|
||||
printf("Building action list.. \n");
|
||||
AccionFileNode *actionFileNode = NULL;
|
||||
actionFileNode = AccionFileNode_BuildSync(fileNodeLeft, fileNodeRight);
|
||||
tBuild=Time_GetTime()-tBuild;
|
||||
printf("tBuild: %9lldus\n",tBuild);
|
||||
|
||||
if (dryRun) {
|
||||
// Mostrar lista de acciones
|
||||
@@ -220,9 +232,12 @@ int Copy(char *pathLeft, char *pathRight, int reCheck, int dryRun) {
|
||||
}
|
||||
|
||||
// Construir acciones
|
||||
long long tBuild=Time_GetTime();
|
||||
printf("Building action list.. \n");
|
||||
AccionFileNode *actionFileNode = NULL;
|
||||
actionFileNode = AccionFileNode_BuildCopy(fileNodeLeft, fileNodeRight);
|
||||
tBuild=Time_GetTime()-tBuild;
|
||||
printf("tBuild: %9lldus\n",tBuild);
|
||||
|
||||
if (dryRun) {
|
||||
// Mostrar lista de acciones
|
||||
|
||||
53
src/util.c
53
src/util.c
@@ -13,3 +13,56 @@ char *String_Copy(char *str) {
|
||||
return (strnew);
|
||||
}
|
||||
|
||||
|
||||
/////////////////////////////
|
||||
// Time_GetTime
|
||||
//
|
||||
// Gets the current time in usecs.
|
||||
/////////////////////////////
|
||||
// Time_Pause
|
||||
//
|
||||
// Pauses the execution for t usecs.
|
||||
#if WIN32
|
||||
#include <windows.h>
|
||||
// WIN32
|
||||
long long Time_GetTime(){
|
||||
LARGE_INTEGER freq;
|
||||
LARGE_INTEGER tim;
|
||||
long long int microt;
|
||||
|
||||
QueryPerformanceFrequency(&freq);
|
||||
QueryPerformanceCounter(&tim);
|
||||
microt=(tim.QuadPart*1000000)/freq.QuadPart;
|
||||
return(microt);
|
||||
}
|
||||
void Time_Pause(int pausa){
|
||||
long long tend,t,diff;
|
||||
|
||||
t=Time_GetTime();
|
||||
tend=t+pausa;
|
||||
do{
|
||||
diff=tend-t;
|
||||
if(diff>1000){
|
||||
Sleep(diff/1000);
|
||||
}else{
|
||||
Sleep(0);
|
||||
}
|
||||
t=Time_GetTime();
|
||||
}while(tend>=t);
|
||||
}
|
||||
#else
|
||||
// UNIX
|
||||
long long Time_GetTime(){
|
||||
struct timeval t;
|
||||
long long usecs;
|
||||
gettimeofday(&t,NULL);
|
||||
usecs=(t.tv_sec*1000000ll)+(t.tv_usec);
|
||||
return(usecs);
|
||||
}
|
||||
void Time_Pause(int pausa){
|
||||
struct timeval tv;
|
||||
tv.tv_sec=(long long)pausa/1000000;
|
||||
tv.tv_usec=(long long)pausa%1000000;
|
||||
select(0, NULL, NULL, NULL, &tv);
|
||||
}
|
||||
#endif // if WIN32
|
||||
13
src/util.h
13
src/util.h
@@ -3,4 +3,17 @@
|
||||
|
||||
char *String_Copy(char *str);
|
||||
|
||||
/////////////////////////////
|
||||
// Time_GetTime
|
||||
//
|
||||
// Gets the current time in usecs.
|
||||
long long Time_GetTime();
|
||||
|
||||
|
||||
/////////////////////////////
|
||||
// Time_Pause
|
||||
//
|
||||
// Pauses the execution for t usecs.
|
||||
void Time_Pause(int pausa);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user