diff --git a/Lib/pathlib.py b/Lib/pathlib.py
index 06cbae5..e73eca7 100644
--- a/Lib/pathlib.py
+++ b/Lib/pathlib.py
@@ -6,7 +6,6 @@
 import posixpath
 import re
 import sys
-import time
 import weakref
 try:
     import threading
@@ -1076,9 +1075,8 @@
             # First try to bump modification time
             # Implementation note: GNU touch uses the UTIME_NOW option of
             # the utimensat() / futimens() functions.
-            t = time.time()
             try:
-                self._accessor.utime(self, (t, t))
+                self._accessor.utime(self, None)
             except OSError:
                 # Avoid exception chaining
                 pass
diff --git a/Lib/test/test_pathlib.py b/Lib/test/test_pathlib.py
index 83c56d0..4108d5e 100755
--- a/Lib/test/test_pathlib.py
+++ b/Lib/test/test_pathlib.py
@@ -1391,11 +1391,8 @@
         # The file mtime should be refreshed by calling touch() again
         p.touch()
         st = p.stat()
-        # Issue #19715: there can be an inconsistency under Windows between
-        # the timestamp rounding when creating a file, and the timestamp
-        # rounding done when calling utime().  `delta` makes up for this.
-        delta = 1e-6 if os.name == 'nt' else 0
-        self.assertGreaterEqual(st.st_mtime, old_mtime - delta)
+        self.assertGreaterEqual(st.st_mtime_ns, old_mtime_ns)
+        self.assertGreaterEqual(st.st_mtime, old_mtime)
         # Now with exist_ok=False
         p = P / 'newfileB'
         self.assertFalse(p.exists())
