On 03.01.2018 23:33, Florian Balmer wrote: > The startup delay for `fossil ui' and `fossil server' on Windows XP is > more obvious than possibly sluggish browser navigation, which I > *think* is due to waiting for StartServiceCtrlDispatcherW. This could > be cut down by skipping the call to StartServiceCtrlDispatcherW for > the `ui' and `server' commands, as Fossil always runs in a console > session, and not as a service, in these cases. > I measured the time it takes to call StartServiceCtrlDispatcherW on my 8 year old Windows 7 64bit box: roughly 600 microseconds, I don't think this is noticeable!
This is the program for taking the time: ***** Start of code ***** #include <stdlib.h> #include <stdio.h> #include <inttypes.h> #include <windows.h> static void WINAPI win32_http_service_main( DWORD argc, LPWSTR *argv ){ return; } int main(void){ LARGE_INTEGER Frequency; LARGE_INTEGER StartingTime; LARGE_INTEGER EndingTime; LARGE_INTEGER ElapsedMicroseconds; double ElapsedSeconds; int rc = 0; /* Define the service table. */ SERVICE_TABLE_ENTRYW ServiceTable[] = {{L"", (LPSERVICE_MAIN_FUNCTIONW)win32_http_service_main}, {NULL, NULL}}; /* Get frequency and the start time. */ QueryPerformanceFrequency(&Frequency); QueryPerformanceCounter(&StartingTime); /* Activity to be timed */ if( !StartServiceCtrlDispatcherW(ServiceTable) ){ if( GetLastError()==ERROR_FAILED_SERVICE_CONTROLLER_CONNECT ){ rc = 1; }else{ rc = 2; } } /* Get end time and convert to seconds. */ QueryPerformanceCounter(&EndingTime); ElapsedMicroseconds.QuadPart = EndingTime.QuadPart - StartingTime.QuadPart; ElapsedMicroseconds.QuadPart *= 1000000; ElapsedMicroseconds.QuadPart /= Frequency.QuadPart; ElapsedSeconds = (double)(EndingTime.QuadPart - StartingTime.QuadPart)/Frequency.QuadPart; printf("Elapsed microseconds: %"PRId64"\n", ElapsedMicroseconds.QuadPart); printf("Elapsed seconds : %f\n", ElapsedSeconds); printf("rc : %d\n", rc); return 0; } ***** End of code ***** It would be interesting to known time on your XP boxes. -- Thomas Schnurrenberger _______________________________________________ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users