cachedInternetProbe

fun cachedInternetProbe(probe: () -> Boolean?): Boolean?

Return the result of probe(), reusing a recent result if one exists. Concurrent callers may each run the probe; that's harmless.