?
Анимация
JavaScript
|
Главная Библионтека 21.19. mmap - отображение файлов в память 317 size() Возвращает размер файла в байтах, который может быть больше размера отображенной в память области. tell() Возвращает текущую позицию в файле. write( string) Записывает строку string в отображенный файл, начиная с текущей позиции. После этого указатель устанавливается на следующий после записанной строки байт. write byte( byte) Записывает один символ byte в отображенный файл (перемещает указатель на 1). Модуль thread предоставляет средства низкого уровня для работы с несколькими потоками, совместно использующими глобальные данные. Для синхронизации модуль предоставляет простые средства блокировки. error Исключения этого класса генерируются в случае возникновения ошибок, специфичных для этого модуля. LockType Объект типа для объектов блокировки. start new thread (function, args [, kwargs]) Создает новый поток и выполняет в нем функцию function, используя в качестве позиционных и именованных аргументов args (кортеж) и kwargs (словарь). exit() exit thread() Генерирует исключение SystemExit. Если исключение (в данном потоке) не обрабатывается, выполнение потока будет молча завершено. Имя exit thread() определено для совместимости со старыми версиями. allocate lock() Возвращает новый объект, реализующий блокировку. Изначально объект не является заблокированным. Средства организации многопоточных программ thread Создание нескольких потоков и управление ими. threading Средства высокого уровня организации потоков. Queue Синхронизированные очереди. 22.1 thread - создание нескольких потоков и управление ими 22.1. thread - создание нескольких потоков и управление ими 319 get ident() Возвращает идентификатор текущего потока (отличное от нуля целое число). После завершения работы потока его идентификатор может быть использован повторно для нового потока. Объекты, возвращаемые функцией allocate lock, имеют следующие мето- acquire( [waitflag]) При вызове без аргументов захватывает (блокирует) объект, дождавшись, если это необходимо, его освобождения другим потокам (возвращает None). Если задан аргумент waitflag (целое число), поведение функции зависит от его значения: 1 - функция ожидает освобождения объекта другим потокам (так же, как и с опущенным аргументом), 0 (и другие значения) - объект захватывается только, если это может быть сделано немедленно. При наличии аргумента функция возвращает 1 , если захват объекта прошел успешно, в противном случае возвращает 0 . release() Освобождает объект. Объект должен быть захвачен ранее, но не обязательно в этом же потоке. locked() Возвращает текущий статус объекта: 1 , если объект захвачен (заблокирован), иначе - 0 . Замечания: • Если доступен модуль signal, прерывание (исключение KeyboardInterrupt) получает основной поток. Однако, если модуль signal недоступен, прерывание может получить любой поток. • Вызов функций sys.exitO и thread.exit() и генерация исключения SystemExit эквивалентны. • Не все функции, реализованные на языке C, при ожидании ввода/вывода позволяют выполняться другим потокам, но наиболее популярные (функции time.sleepO и select.select() , метод read() файловых объектов) работают правильно. • Невозможно прервать выполнение метода acquire() объектов, предназначенных для блокировки, - исключение KeyboardInterrupt будет сгенерировано только после захвата объекта. • Поведение при завершении работы основного потока раньше других зависит от платформы. Обычно остальные потоки немедленно завершают свою работу без выполнения ветвей finally инструкций try и вызова деструкторов объектов. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 [ 100 ] 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 |