J'ai un thread qui pousse les données dans une file d'attente et un autre thread qui lit les données de la file d'attente et les traite. Je voudrais vérifier combien de temps les données se trouvent dans la file d'attente avant d'être traitées.Est-ce que nanoTime peut fonctionner sur les threads
J'ai ajouté un paramètre de temps (calculé en utilisant System.nanoTime()
) dans les données avant d'être poussé par le premier thread. Une fois que le deuxième thread le traite, il calcule System.nanoTime()
et trouve la différence par rapport à l'heure précédente définie dans les données.
Est-ce que cela fonctionnerait correctement? Je pose cette question parce que je vois une différence négative dans les journaux.
MISE À JOUR
Je voudrais préciser que, le temps de démarrage est mis par un processus dans une autre machine et la différence est calculée dans une autre machine.
est la file d'attente située sur une seule machine? ne pouvez-vous pas mesurer le temps dans la file d'attente à la place? – nandsito
La file d'attente est en redis. Comment pouvons-nous mesurer le temps dans la file d'attente? – cppcoder