Как настроить timeout обращения к интернету на swift3?

Настраивание timeout'а при обращении к интернету на Swift 3 может быть выполнено с использованием URLSessionConfiguration. Вам потребуется создать экземпляр URLSessionConfiguration и установить свойство timeoutIntervalForRequest в соответствующее значение.

Вот пример кода, показывающего, как это можно сделать:

// Создаем экземпляр URLSessionConfiguration
let config = URLSessionConfiguration.default

// Устанавливаем значение timeout'а в секундах
config.timeoutIntervalForRequest = 10

// Создаем экземпляр URLSession с использованием настроек
let session = URLSession(configuration: config)

// Теперь вы можете использовать созданную сессию для работы с сетью
// Например, отправить запрос на сервер с заданным timeout'ом
let url = URL(string: "https://example.com")!
let task = session.dataTask(with: url) { data, response, error in
    // Обработка ответа от сервера
}

// Запускаем задачу
task.resume()

В этом примере мы создаем экземпляр URLSessionConfiguration с использованием метода default, который использует значения по умолчанию для конфигурации сессии. Затем мы устанавливаем значение свойства timeoutIntervalForRequest в 10 секунд. После этого мы создаем экземпляр URLSession, используя настройки конфигурации, и выполняем обычную работу с сетью, в данном случае - отправляем GET-запрос на URL "https://example.com" с использованием созданной сессии.

Этот код позволит установить timeout для всех запросов, выполняемых в рамках данной сессии.