gio: new g_output_stream_[gs]et_retry_delay() functions.

Allow setting a delay for retrying actions which may fail for non-fatal
reasons. Currently this delay is only used in the GLocalFileOutputStream
child class, when temporary file overwritting the original file fails
because of busy resources.

In particular this deals with Windows lock mechanism where a file being
opened by another process cannot be overwritten, which was causing file
saves to fail randomly when the temporary file cannot be moved over the
original file because some third-party process happened to read the file
at the same instant (typically antiviruses or cloud clients checking if
a file needs syncing). This cannot help if a file is locked for too long
time, hence this is up to implementers to determine appropriate and
acceptable delays.

This delay may be used in other places of GOutputStream and child
implementations when it makes sense.
8 jobs for wip/Jehan/Windows-lock-file-on-rename-v2 in 15 minutes and 3 seconds (queued for 2 seconds)
latest
Status Job ID Name Coverage
  Build
passed #254422
cross-android_api21_arm64

00:04:30

passed #254423
cross-android_api28_arm64

00:03:52

passed #254424
cross-mingw64

00:05:13

passed #254420
fedora-x86_64

00:09:20

passed #254421
G_DISABLE_ASSERT

00:06:56

passed #254425
win32
msys2-mingw32

00:11:50

passed #254426
win32
vs2017-x64

00:09:12

 
  Coverage
passed #254427
coverage

00:03:12

74.9%