Messages in this thread | | | Date | Mon, 24 Jun 2002 10:55:31 +0200 | From | "Salvatore D'Angelo" <> | Subject | gettimeofday problem |
| |
Hi,
I am writing a small piece of code that use the gettimeofday routine and I have noticed a very strange behaviour. If I call the routine two times in sequence I expect that the second value is greater than or equal to the first one, but it is not true.
please check the following code.
Sometimes happen that the string "Strange Behaviour" is printed with kernel 2.4.18.
I tried to find in the Linux Archive patches to solve this problem, but I didn't find anything (there are emails that talk about gettimeofday, but probably they do not answer to my questions).
The same thing happen in Java using the System.currentTimeMillis() routine.
#include <fstream.h> #include <sys/time.h>
// this routine calculate the current time returning its value in long long format. long long currentTimeMillis() { long long t; struct timeval tv;
gettimeofday(&tv, 0);
t = tv.tv_sec; t = (t *1000) + (tv.tv_usec/1000);
return t; }
void main() { for (;;) { long long a = currentTimeMillis(); long long b = currentTimeMillis();
if (a>b) { cout << "Strange Behaviour" << endl; } } }
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |