Flex - Увеличение времени ожидания при вызове сервисной функции PHP - PullRequest
0 голосов
/ 26 марта 2010

Я использую Flash Builder 4 Beta 2. У меня есть подключение к службе PHP. Я настроил это с помощью мастера, поэтому я не написал код для подключения к нему. Сервис выглядит так:

package services.flash
{
import mx.rpc.AsyncToken;
import com.adobe.fiber.core.model_internal;
import mx.rpc.AbstractOperation;
import valueObjects.CustomDatatype8;
import valueObjects.NewUsageData;
import mx.collections.ItemResponder;
import mx.rpc.remoting.RemoteObject; 
import mx.rpc.remoting.Operation;
import com.adobe.fiber.services.wrapper.RemoteObjectServiceWrapper;
import com.adobe.fiber.valueobjects.AvailablePropertyIterator;
import com.adobe.serializers.utility.TypeUtility;

[ExcludeClass]
internal class _Super_FLASH extends RemoteObjectServiceWrapper
{      

    // Constructor
    public function _Super_FLASH()
    {
        // initialize service control
        _serviceControl = new RemoteObject(); 

        var operations:Object = new Object();
        var operation:Operation;         

        operation = new Operation(null, "sendCommand");
         operation.resultType = Object;          
        operations["sendCommand"] = operation;

        ...
     }
}

Одна из функций, которые я вызываю, выбирает пользователей из базы данных MySQL. Сейчас около 30 000 пользователей. Похоже, что служба извлекает тайм-аут при получении более 22 000 строк, я получаю сообщение об ошибке «Канал отключен до получения подтверждения». Если я вызываю PHP-скрипт из браузера, он все равно извлекает их без проблем. Я попытался увеличить время ожидания в PHP-скрипте (который не работал), но, очевидно, это не проблема, так как браузер может их без проблем вывести.

Есть ли способ увеличить время ожидания службы PHP во Flash Builder? Я немного новичок, когда дело доходит до Flash, поэтому, пожалуйста, будьте внимательны. Заранее спасибо!

1 Ответ

1 голос
/ 27 марта 2010

Все удаленные объекты имеют параметр requestTimeout. Просто установите все, что вам нужно.

_serviceControl.requestTimeout = 1000;
...