Сайт справки
  • Авторизация
  • Обратная связь
  • Теги
    • Joomla
      • JLoader
      • Mootools
      • Bootstrap
      • jQuery
      • jQuery UI
      • Конфликты JS
      • Joomla! Javascript Framework
      • JS Фреймворки
      • Ajax
      • JS
      • MVC
      • JoomShopping
      • Сессии
    • JS

Расширенный поиск
  • Главная
  • Разное
  • PHP
  • PHP-CPP
  • 22 Динамическая загрузка.
  • php
  • Многопоточность
  • parallel

Класс parallel\Future

(0.8.0)

Futures

Future представляет возвращаемое значение или неперехваченное исключение из задачи и предоставляет API для отмены.

Пример #1 Пример, показывающий Future как возвращаемое значение

<?php
	$runtime = new \parallel\Runtime;
	$future  = $runtime->run(function(){
		return "World";
	});
	printf("Hello %s\n", $future->value());
?>

Результатом выполнения данного примера будет что-то подобное:

Hello World

Поведение Future также позволяет использовать его в качестве простой точки синхронизации, даже если задача не возвращает значение явно.

Пример #2 Пример, показывающий Future как точку синхронизации

<?php
	$runtime = new \parallel\Runtime;
	$future  = $runtime->run(function(){
		echo "in child ";
		for ($i = 0; $i < 500; $i++) {
			if ($i % 10 == 0) {
				echo ".";
			}
		}
		echo " leaving child";
	});

	$future->value();
	echo "\nparent continues\n";
?>

Результатом выполнения данного примера будет что-то подобное:

in child .................................................. leaving child
parent continues

Обзор классов

 

 final parallel\Future {
	/* Разрешение */
	public value ( void ) : mixed
	/* Состояние */
	public cancelled ( void ) : bool
	public done ( void ) : bool
	/* Отмена */
	public cancel ( void ) : bool
}

 


  • 08 Лямбда-функции.
  • 16 Исключения.
  • 03 Ваше первое расширение.
  • 11 Наследование классов.
  • 19 Загрузка настроек из php.ini.
  • 14 Специальные функции.
  • 06 Параметры функции.
  • 09 Классы и объекты.
  • 17 Работа с переменными.
  • 20 Обратные вызовы расширения.
  • 04 Генерация выходных данных и ошибок.
  • 12 Магические методы.
  • 15 Свойства класса.
  • 07 Вызов функций.
  • 10 Конструкторы и деструкторы
  • 18 Глобальные константы и константы уровня класса.
  • 21 Пространство имен.
  • 01 Как установить PHP-CPP?
  • 02 Как PHP загружает свои расширения?
  • 05 Регистрация собственных функций
  • Карта сайта

Наверх

© Сайт справки 2025

Яндекс.Метрика