DownloadHandler.ReceiveData
Declaration
protected bool ReceiveData(byte[] data, int dataLength);Параметры
| Параметр | Описание |
|---|---|
| данные | Буфер, содержащий необработанные данные, полученные от удаленного сервера. |
| dataLength | Число байт в data, которые являются новыми. |
Возвращаемое значение
логическое True для продолжения загрузки, false для прекращения.
Описание
Обратный вызов, вызываемый при получении данных от удаленного сервера.
Этот обратный вызов вызывается на главном потоке.ReceiveData вызывает после того, как данные прибыли с удаленного сервера, и может быть вызван несколько раз за кадр. data аргумент содержит необработанные байты, полученные от удаленного сервера, и dataLength указывает длину новых данных в массиве данных.ReceiveData требует возвращаемого значения true или false. Если вы вернетесь false, система немедленно прерывает UnityWebRequest. Если вы вернетесь true, обработка продолжается нормально.
Данные, поступающие с удаленного сервера для DownloadHandlerScript хранится во временном буфере. Когда в буфере имеются необработанные данные, этот метод вызывается один раз в кадре для передачи кусков данных скрипту. Если несколько датаграмм поступают в один кадр, они объединяются перед передачей этому обратному вызову. Массив байтов данных содержит полученные данные.
При работе в режиме без предварительного выделения, система выделяет новый массив байтов каждый раз, когда вызывают этот обратный вызов. data.Length равна dataLength, и вы можете безопасно игнорировать dataLength аргумент.
При работе в режиме предварительного выделения аргументом данных будет массив байтов, переданный во время построения, а аргументом dataLength аргумент указывает, какие байты в массиве байтов являются новыми.
Важно: Система не нулирует массив между вызовами.
Дополнительные сведения о режимах распределения см. в описании конструктора для DownloadHandlerScript.