Да. Мне нравится ответ с eval, но многие люди боятся любого eval в своем коде, поэтому вот один без eval:
<?php //MyClass.php
namespace my\namespace;
function get_dynamic_parent() {
return 'any\other\namespace\ExtendedClass';// return what you need
}
class_alias(get_dynamic_parent(), 'my\namespace\DynamicParent');
class MyClass extends DynamicParent {}
Ядро linux имеет несколько различных доступных алгоритмов планирования как для планирования процессов, так и для планирования ввода-вывода. Загрузите его с www.kernel.org и позвоните по телефону
make menuconfig
. Вы получите полный список всех доступных опций со встроенной справкой. Один парень, который когда-то придумал свой планировщик O (1), - это Кон Коливас . Обязательно нужно взглянуть на то, что он сделал. Когда-то я был большим прорывом.
Я считаю, что с последними ядрами используется "полностью честный планировщик". Я думаю, вы сможете получить хороший объем информации, если просто выполните поиск в Google.
ссылка: http://en.wikipedia.org/wiki/Completely_Fair_Scheduler
Новым дополнением к ядру Linux является EDF (первый крайний срок) для гарантированной поддержки в реальном времени. http://lkml.org/lkml/2009/9/22/186 http://www.evidence.eu.com/content/view/313/390/
Я думаю, что в ядре Linux есть несколько разных планировщиков, из которых вы можете выбирать во время компиляции. Чтобы узнать больше о ядре Linux, вы можете загрузить исходный код ядра (или просмотреть его в Интернете) и заглянуть в каталог документации. Например, может оказаться полезным подкаталог планировщика . Вы также можете просто взглянуть на сам код, очевидно.
Как уже упоминалось другими, существует несколько доступных алгоритмов планирования в зависимости от предполагаемого использования.
Прочтите эту статью , если хотите узнать больше о планировании в Linux.