Модуль erlang

Модуль erlang содержит, пожалуй, самые важные и популярные функции. Тут, например, функции округления чисел до целого (round, floor, ceil, trunc), получения головы и хвоста списка (hd, tl), узнавания длины списка, кортежа, бинарника, битстроки (length, size, bit_size), работы со словарём актора (put, get, erase, get_keys), спауна акторов (spawn, spawn_link, spawn_monitor, spawn_opt, spawn_request) и многие другие.

В силу популярности многие функции этого модуля можно использовать не указывая имени модуля. Например, можно вызвать hd([1,2,3]) или spawn(Fun), но для loaded и localtime можно только так: erlang:loaded() и erlang:localtime().

Функции модуля erlang

abs(Number) Возвращает абсолютное значение числа (отбрасывает знак минус, если он есть). Если на вход подаётся целое число, на выходе тоже будет целое. Если вещественное — то вещественное.

adler32(Data) Вычисляет и возвращает контрольную сумму для данных по алгоритму adler32.

adler32(OldAdler, Data) Комбинирует две контрольные суммы по алгоритму adler32.

adler32_combine(FirstAdler, SecondAdler, SecondSize) Комбинирует две вычисленные до этого контрольные суммы по алгоритму adler32.

alias(Opts) Создаёт псевдоним для процесса, что может быть использовано для тонкой настройки отправки сообщений (например, приоритетных).

append_element(Tuple1, Term) Добавляет в кортеж ещё один элемент.

apply(Fun, Args) Выполняет фунтерм с аргументами.

apply(Module, Function, Args) Выполняет МФА. Функция должна быть представлена атомом функции (то есть это не фунтерм).

atom_to_binary(Atom, Encoding) Превращает атом в бинарник, согласно своему текстовому представлению.

atom_to_list(Atom) Превращает атом в список символов (целые числа согласно кодам юникода).

binary_part(Subject, Start, Length) Извлекает часть бинарника, начиная с позиции Start и длиной Length.

binary_to_atom(Binary, Encoding) Превращает бинарник в атом, согласно текстовому представлению.

binary_to_existing_atom(Binary, Encoding) Превращает бинарник в атом, согласно текстовому представлению, но только если такой атом уже есть в системе.

binary_to_float(Binary) Превращает бинарник в вещественное число, согласно текстовому представлению.

binary_to_integer(Binary) Превращает бинарник в целое число, согласно текстовому представлению числа в бинарнике.

binary_to_integer(Binary, Base) Превращает бинарник в целое число, с произвольным основанием Base (для шестнадцетиричной системы указать 16).

binary_to_list(Binary) Превращает бинарник в список целых чисел, согласно байтам бинарника.

binary_to_list(Binary, Start, Stop) Превращает часть бинарника в список целых чисел, согласно байтам бинарника, от позиции Start до позиции Stop.

binary_to_term(Binary) Из бинарника, где спрятан терм в т.н. внешнем формате, восстанавливается терм. Функция, обратная term_to_binary().

binary_to_term(Binary, Opts) Превращает бинарник в т.н. внешнем формате в терм, с дополнительными опциями (safe и used).

bit_size(Bitstring) Возвращает количество битов данной битстроки.

bitstring_to_list(Bitstring) Битстрока превращается в список целых чисел; если помимо этих байтов остаётся ещё хвостик, он возвращается в виде битстроки.

bump_reductions(Reductions) Увеличить некий счётчик для вызывающего процесса.

byte_size(Bitstring) Высчитывает объём битстроки в байтах — чтобы все биты смогли уместиться.

cancel_timer(TimerRef, Options) Остановить таймер TimerRef, который был запущен функцией erlang:start_timer/4 или erlang:send_after/4.

ceil(Number) Округляет вверх, то есть возвращает наименьшее целое число, которое не меньше заданного числа.

check_old_code(Module) Возвращает true, если заданный модуль имеет старый код.

check_process_code(Pid, Module, OptionList) Проверяет, не исполняет ли заданный процесс старый код модуля.

convert_time_unit(Time, FromUnit, ToUnit) Конвертировать время из одной единицы измерения (например, миллисекунды) в другую (например, наносекунды).

crc32(Data) Вычисляет и возвращает контрольную сумму по алгоритму crc32.

crc32(OldCrc, Data) Комбинирует две контрольные суммы по алгоритму crc32.

crc32_combine(FirstCrc, SecondCrc, SecondSize) Комбинирует две контрольные суммы по алгоритму crc32.

date() Возвращает текущую дату как кортеж {Год, Месяц, День}.

decode_packet(Type, Bin, Options) Декодирует бинарник в соответствии со спецификацией протокола.

delete_element(Index, Tuple1) Возвращает новый кортеж, короче прежнего на один определённый элемент.

delete_module(Module) Пометить указанный модуль как старый код (функция используется в кодовом сервере).

demonitor(MonitorRef) Удаляет монитор на указанный актор.

demonitor(MonitorRef, OptionList) Удалить монитор на указанный актор, с указанием опций.

disconnect_node(Node) Принудительно отключить ноду.

display(Term) Показывает на стандартном выходе текстовое представление терма (используется в отладке). Вернёт true, если это терм.

dist_ctrl_get_data(DHandle) Получает данные канала распределения (используется при альтернативной реализации распределения).

dist_ctrl_get_data_notification(DHandle) Посылает запрос, когда данные доступны для получения с помощью erlang:dist_ctrl_get_data(DHandle) (используется при альтетнативной реализации распределения).

dist_ctrl_get_opt(DHandle, Opt) Возвращает значение опции get_size созданного канала распределения (используется при альтернативной реализации распределения).

dist_ctrl_input_handler(DHandle, InputHandler) Регистрирует альтернативный обработчик для канала распределения (используется при альтернативной реализации распределения).

dist_ctrl_put_data(DHandle, Data) Отправляет данные канала распределения из удалённой ноды в локальную (используется при альтернативной реализации распределения).

dist_ctrl_set_opt(DHandle, Opt, Val) Устанавливает значение опции get_size (используется при альтернативной реализации распределения).

element(N, Tuple) Возвращает N-й элемент кортежа.

erase() Возвращает весь словарь актора (как список кортежей {Ключ, Значение}), при этом удаляя его.

erase(Key) Возвращает значение по ключу, при этом удаляя эту связку из словаря актора.

error(Reason) Кастомная ошибка.

error(Reason, Args) Вызов кастомной ошибки, в качестве Args ожидается увидеть аргументы текущей функции.

error(Reason, Args, Options) Вызывает исключение класса error, Args — аргументы текущей функции, в качестве опции можно добавить error_info для форматирования ошибки.

exit(Dest, Reason) Посылает сигнал выхода актору или порту по пиду.

exit(Dest, Reason, OptList) Посылает сигнал выхода актору или порту по пиду, в качестве опции можно указать приоритет.

exit(Reason) Вызывает исключение класса exit с причиной Reason.

external_size(Term) Для данного терма оценивает максимальный размер в байтах, если бы мы решили его запаковать в так называемый внешний формат.

external_size(Term, Options) Для данного терма оценивает максимальный размер в байтах, если бы мы решили его запаковать в так называемый внешний формат (дополнительные опции согласно term_to_binary/2).

float(Number) Превращает число (целое или вещественное) в вещественное.

float_to_binary(Float, Options) возвращает бинарник согласно текстовому представлению указанного вещественного числа. Текстовое представление можно менять с помощью опций.

float_to_list(Float, Options) возвращает список символов, т.е. строку, согласно текстовому представлению указанного вещественного числа. Текстовое представление можно менять с помощью опций.

floor(Number) Округляет число вниз, т.е. возвращает наибольшее целое число, которое не превосходит указанное число.

fun_info(Fun) Информация о данном фунтерме.

fun_info(Fun, Item) Конкретная информация о фунтерме.

fun_to_list(Fun) Возвращает строку, показывающую, как был создан данный фунтерм.

function_exported(Module, Function, Arity) Возвращает true, если указанный модуль существует и содержит экспортированную функцию такой-то арности, иначе — false.

garbage_collect() Форсирует немедленную сборку мусора текущего актора.

garbage_collect(Pid, OptionList) Форсирует немедленную сборку мусора указанного актора, с дополнительными опциями.

get() Возвращает весь словарь актора как список кортежей {Ключ, Значение}.

get(Key) По ключу возвращает значение из словаря актора.

get_cookie() Возвращает куки текущей локальной ноды, если она жива, иначе — nocookie.

get_cookie(Node) Возвращает куки указанной ноды, если она жива, иначе — nocookie.

get_keys() Возвращает список всех ключей словаря актора.

get_keys(Val) Возвращает список ключей словаря актора, ассоциированных со значением Val.

group_leader() Возвращает пид группового лидера для данного актора.

group_leader(GroupLeader, Pid) Устанавливает для данного пида нового группового лидера.

halt() Остановить систему.

halt(HaltType) Установить систему, с указанием типа останова.

hd(List) Возвращает голову списка. Может работать с неправильным списком.

hibernate() Заставляет данный актор впасть в спячку и высвободить тем самым столько памяти, сколько возможно. Это полезно, когда надо экономить память, а данный процесс в ближайшее время не ожидает прихода сообщений.

hibernate(Module, Function, Args) Заставляет данный актор впасть в спячку и высвободить тем самым столько памяти, сколько возможно. После выхождения из спячки стек отбрасывается.

insert_element(Index, Tuple1, Term) Вставляет в кортеж новый элемент на указанную позицию.

integer_to_binary(Integer) Превращает целое число в бинарник в соответствии с текстовым представлением этого числа.

integer_to_binary(Integer, Base) Превращает целое число в бинарник, соответственно текстовому представлению, которое может меняться в зависимости от основания (например, для десятичного 10, для шестнадцетеричного 16).

integer_to_list(Integer) Превращает целое число в свой строковый эквивалент.

integer_to_list(Integer, Base) Превращает целое число в его текстовый эквивалент, который может меняться в зависимости от основания (16 — шестнадцатеричное представление).

iolist_size(Item) Возвращает длину в байтах иолиста.

iolist_to_binary(IoListOrBinary) Превращает иолист в бинарник.

iolist_to_iovec(IoListOrBinary) Превращает иолист в iovec.

is_alive() Проверить, жива ли локальная нода (может ли быть частью распределённой системы).

is_atom(Term) Предикат, проверяющий, является ли терм атомом или нет.

is_binary(Term) Предикат, проверяющий, является ли терм бинарником или нет.

is_bitstring(Term) Предикат, проверяющий, является ли терм битстрокой (в т.ч. бинарником) или нет.

is_boolean(Term) Предикат, проверяющий, является ли терм булевым атомом: true или false.

is_builtin(Module, Function, Arity) Вовзращает true, если указанная функция является бифом, реализованным на Си.

is_float(Term) Предикат, проверяющий, является ли данный терм вещественным числом.

is_function(Term) Предикат, проверяющий, является ли данный терм фунтермом или нет.

is_function(Term, Arity) Предикат вернёт true, если указанный терм является фунтермом и при этом данной арности.

is_integer(Term) Предикат, проверяющий, является ли данный терм целым числом или нет.

is_list(Term) Предикат, проверяющий, является ли указанный терм списком.

is_map(Term) Предикат, проверяющий, является ли данный терм картой или нет.

is_map_key(Key, Map) Предикат, проверяющий, является ли данный терм ключом в указанной карте.

is_number(Term) Предикат, проверяющий, является ли данный терм числом (целым или вещественным).

is_pid(Term) Предикат, проверяющий, является ли данный тер пидом или нет.

is_port(Term) Предикат, проверяющий, является ли данный терм идентификатором порта или нет.

is_process_alive(Pid) Предикат вернёт true, если указанный пид существует и актор живёт.

is_record(Term, RecordTag) Предикат, проверяющий, является ли данный терм записью; вернёт true, если указанный терм является кортежем и его первый элемент RecordTag.

is_record(Term, RecordTag, Size) Предикат проверяющий, является ли данный терм записья, а именно: вернёт true, если терм является кортежем, первый элемент у него имеет имя RecordTag, а сам кортеж имеет размер Size.

is_reference(Term) Предикат, проверяющий, является ли указанный терм уникальной ссылкой (сделанной с помощью make_ref/0) или нет.

is_tuple(Term) Предикат, проверяющий, является ли данный терм кортежем или нет.

length(List) Возвращает длину списка (количество элементов).

link(PidOrPort) Установить линк между текущим актором и другим актором или портом.

link(PidOrPort, OptList) Устанавливает линк между текущим актором и указанным пидом или портом; можно указать дополнительную опцию priority.

list_to_atom(String) Создаёт новый атом из указанной строки.

list_to_binary(IoList) Превращает иолист в бинарник.

list_to_bitstring(BitstringList) Возвращает битстроку список, состоящий из целых чисел и других битстрок.

list_to_existing_atom(String) Превращает строку в атом, но только в том случае, когда данный атом уже есть в системе.

list_to_float(String) Превращает строку в вещественное число (если это, конечно, возможно).

list_to_integer(String) Превращает строку в целое число (если это, конечно, возможно).

list_to_integer(String, Base) Превращает строку в целое число, если такое возможно; Base — основание целого числа (например, 16 для шестнадцатеричной системы).

list_to_pid(String) Превращает строку в пид (используется при отладке).

list_to_port(String) Превращает строку в порт (используется в отладке).

list_to_ref(String) Превращает строку в уникальную ссылку (делаемую с помощью make_ref/0) (используется в отладке).

list_to_tuple(List) Превращает список в кортеж.

load_module(Module, Binary) Загружает модуль (используется в кодовом сервере).

load_nif(Path, LoadInfo) Загрузить и слинковать динамическую библиотеку, содержащую NIF.

loaded() Возвращает список всех загруженных модулей, включая предзагруженные.

localtime() Возвращает локальную дату и время в формате {{Год, Месяц, День}, {Час, Минуты, Секунды}}.

localtime_to_universaltime(Localtime) Конвертирует локальную дату и время во Всеобщее время (UTC).

localtime_to_universaltime(Localtime, IsDst) Конвертирует локальную дату и время во Всеобщее время (UTC); вторым аргументом указывается true или false, в зависимости от наличия перехода на зимнее время.

make_ref() Создать уникальную ссылку, то есть терм, однозначно уникальный в кластере нод.

make_tuple(Arity, DefaultValue, InitList) Создаёт кортеж заданного размера, каждый элемент которого — DefaultValue, потом с помощью InitList (список кортежей вида {номер_позиции, значение}) заполняет определённые элементы.

make_tuple(Arity, InitialValue) Создаёт кортеж заданного размера, где каждый элемент равен InitialValue.

map_get(Key, Map) Возвращает значение, ассоциированное с указанным ключом в указанной карте.

map_size(Map) Возвращает размер карты, то есть количество пар ключ-значение.

match_spec_test(MatchAgainst, MatchSpec, Type) Проверяет спецификацию соответствия, которую используют в ets:select/2 и trace:function/4.

max(Term1, Term2) Возвращает наибольший из двух термов.

md5(Data) Вычисляет MD5-дайджест для данных.

md5_final(Context) Вычисляет MD5-дайджест для бинарника.

md5_init() Создаёт MD5-контекст.

md5_update(Context, Data) Обновляет MD5-контекст.

memory() Выдаёт информацию об использовании памяти системой.

memory(Type) Возвращает использование Эрлангом памяти. total — всё. processes — акторы. И т.д.

min(Term1, Term2) Определяет минимальный из двух термов.

module_loaded(Module) Предикат, проверяющий, загружен ли данный модуль или нет. Во время проверки не пытается загрузить модуль.

monitor(Type, Item) Создаёт монитор.

monitor(Type, Item, Opts) Создаёт монитор, с опциями.

monitor_node(Node, Flag) Устанавливает наблюдение за нодой: когда она падает, актор получает сообщение.

monitor_node(Node, Flag, Options) Устанавливает наблюдение за нодой, с дополнительной опцией allow_passive_connect.

monotonic_time() Возвращает текущее монотонное время.

monotonic_time(Unit) Возвращает текущее монотонное время, с указанием единицы измерения.

nif_error(Reason) Работает в точности как error/1, однако dialyzer думает, что этот биф вернёт произвольный терм.

nif_error(Reason, Args) Работает в точности как error/2, однако dialyzer думает, что биф вернёт произвольный терм.

node() Возвращает имя текущей ноды.

node(Arg) Возвращает имя ноды, откуда происходит данная сущность (пид, порт, уникальная ссылка).

nodes() Получить список всех нод, с которыми мы соединены. Скрытые ноды не учитываются.

nodes(Arg) Получить список нод определённого типа, с которыми соединена данная нода.

nodes(Arg, InfoOpts) Получить список нод определённого типа, с которыми соединена данная нода, с дополнительными опциями.

now() (устарела) Возвращает {MegaSecs, Secs, MicroSecs}, прошедшие с 1 января 1970 г.

open_port(PortName, PortSettings) Создаёт порт и возвращает его идентификатор.

phash(Term, Range) (устарела) Возвращает хэш-значение для данного терма. Хэш-значение зависит от машинной архитектуры и версии ERTS.

phash2(Term, Range) Возвращает хэш-значение для данного терма. Хэш-значение зависит от машинной архитектуры и версии ERTS.

pid_to_list(Pid) Превращает пид в строку.

port_call(Port, Operation, Data) Осуществляет синхронный вызов к порту; операция и данные зависят от типа порта.

port_close(Port) Закрывает открытый порт.

port_command(Port, Data) Посылает данные в порт.

port_command(Port, Data, OptionList) Посылает данные в порт, с дополнительными опциями.

port_connect(Port, Pid) Устанавливает, какой актор будет владельцем порта.

port_control(Port, Operation, Data) Осуществляет синхронный контроль над портом.

port_info(Port) Возвращает список кортежей — с информацией о данном порте.

port_info(Port, Item) Возвращает конкретную информацию о порте.

port_to_list(Port) Превращает идентификатор порта в список.

ports() Возвращает список идентификаторов портов на данной ноде.

pre_loaded() Возвращает список предзагруженных модулей.

process_display(Pid, Type) Выдаёт развёрнутую информацию о данном акторе.

process_flag(Flag, Value) Устанавливает флаг процесса в определённое значение.

process_flag(Pid, Flag, Value) Устанавливает флаг процесса, с указанием дополнительного значения.

process_info(Pid) Возвращает список информационных кортежей, касающихся указанного актора.

process_info(Pid, ItemSpec) Возвращает конкретную информацию по указанному актору.

processes() Возвращает список акторов, запущенных на текущей ноде.

processes_iterator() Возвращает итератор процессов, который используется в processes_next/1.

processes_next(Iter) Нужен для перебора (итерации) акторов; принимает текущий итератор и возвращает кортеж {пид, новый_итератор}.

purge_module(Module) Удаляет старый код модуля (используется в кодовом сервере).

put(Key, Val) Добавляет новую связку “ключ-значение” в словарь актора. Возвращается старое значение или атом undefined.

raise(Class, Reason, Stacktrace) Вызывает исключение заданного класса, с указанием причины, вызывает обратную трассировку стека.

read_timer(TimerRef, Options) Читает состояние таймера (созданного с помощью erlang:start_timer/4 или erlang:send_after/4.

ref_to_list(Ref) Превращает уникальную ссылку в строку (используется в отладке).

register(RegName, PidOrPort) Регистрирует пид актора или порт под именем-атомом (RegName). Если такое имя уже есть, вернется ошибка.

registered() Возвращает список зарегистрированных атомов-имён (пидов и портов).

resume_process(Suspendee) Понижает suspend count для указанного актора (используется в отладке).

round(Number) Округляет число, превращая его в ближайшее целое.

self() возвращает пид текущего актора.

send(Dest, Msg) Посылает сообщение актору; то же, что и Dest ! Msg.

send(Dest, Msg, Options) Посылает сообщение на почтовый ящик актора, с дополнительными опциями: nosuspend, noconnect или priority.

send_after(Time, Dest, Msg, Options) Запускает таймер; когда таймер закончится, указанному актору будет послано сообщение.

send_nosuspend(Dest, Msg) Посылает сообщение актору, но только если тот не находится в спящем режиме или не занят.

send_nosuspend(Dest, Msg, Options) Посылает сообщение актору, но только если тот не находится в спящем режиме или не занят, с дополнительными опциями.

set_cookie(Cookie) Устанавливает куки локальной ноды.

set_cookie(Node, Cookie) Устанавливает куки для указанной ноды. Если указана локальная нода, посылает на все другие ноды.

setelement(Index, Tuple1, Value) Меняет в кортеже по данному указателю элемент на новое значение.

size(Item) Возвращает число байтов бинарника или число элементов в кортеже.

spawn(Fun) Спаунит фунтерм, возвращая пид актора.

spawn(Module, Function, Args) Спаунит МФА и возвращает пид актора.

spawn(Node, Fun) Спаунит фунтерм на ноде и возвращает пид актора.

spawn(Node, Module, Function, Args) Спаунит МФА на ноде и возвращает пид получившегося актора.

spawn_link(Fun) Совмещает два в одном: спаунит фун-терм и сразу создаёт линк.

spawn_link(Module, Function, Args) Делает два в одном: спаунит МФА и устанавливает линк. Это атомарная функция, поэтому не может быть такого, что актор создан, но линк с ним ещё не успели создать. Этим и полезна.

spawn_link(Node, Fun) Совмещает два в одном: атомарно спаунит фунтерм на ноде и делает линк.

spawn_link(Node, Module, Function, Args) Сочетает два в одном: атомарно спаунит МФА на ноде и устанавливает линк.

spawn_monitor(Fun) Атомарно спаунит фунтерм и создаёт монитор за этим актором, возвращая пид и ссылку на монитор.

spawn_monitor(Module, Function, Args) Атомарно спаунит МФА и создаёт монитор за этим актором, возвращая пид и ссылку на монитор.

spawn_monitor(Node, Fun) Атомарно спаунит фунтерм на ноде и создаёт монитор за этим актором, возвращая пид и ссылку на монитор.

spawn_monitor(Node, Module, Function, Args) Атомарно спаунит МФА на ноде и создаёт монитор за этим актором, возвращая пид и ссылку на монитор.

spawn_opt(Fun, Options) Спаунит фунтерм в актор, с дополнительными опциями.

spawn_opt(Module, Function, Args, Options) Спаунит МФА, с указанием дополнительных опций.

spawn_opt(Node, Fun, Options) Спаунит фунтерм на указанной ноде, с указанием дополнительных опций.

spawn_opt(Node, Module, Function, Args, Options) Спаунит МФА на указанной ноде в актор, с указанием дополнительных опций.

spawn_request(Fun) Асинхронный спаун актора из фунтерма: функция возвращает идентификатор запроса, потом приходит сообщение, что актор запущен.

spawn_request(FunOrNode, OptionsOrFun) Асинхронный спаун актора из фунтерма: функция возвращает идентификатор запроса, потом приходит сообщение, что актор запущен.

spawn_request(Node, Module, Function, Args, Options) Асинхронный спаун на указанной ноде актора из МФА: функция возвращает идентификатор запроса, потом приходит сообщение, что актор запущен.

spawn_request(NodeOrModule, FunOrFunction, OptionsOrArgs) Асинхронный спаун актора из фунтерма или функции: возвращается идентификатор запроса, потом приходит сообщение, что актор запущен.

spawn_request(NodeOrModule, ModuleOrFunction, FunctionOrArgs, ArgsOrOptions) Асинхронный спаун актора из МФА: возвращается идентификатор запроса, потом приходит сообщение, что актор запущен.

spawn_request_abandon(ReqId) Отказаться от ранее созданного запроса на асинхронный запуск актора.

split_binary(Bin, Pos) Делит бинарник на две части.

start_timer(Time, Dest, Msg, Options) Запускает таймер; когда таймер закончится, указанному актору будет послано сообщение.

statistics(Item) Выдаёт разную статистику по работающей системе.

suspend_process(Suspendee) Приостановить указанный процесс (используется в отладке).

suspend_process(Suspendee, OptList) Приостановить указанный процесс, с указанием дополнительных опций.

system_flag(Flag, Value) Установить системный флаг в заданное значение.

system_info(Item) Узнать информацию о текущей конфигурации Системы. Например, если в качестве аргумента задать atom_limit, можно узнать максимально возможное количество атомов.

system_monitor() Возвращает текущие настройки системного мониторинга, устанавливаемого erlang:system_monitor/2.

system_monitor(Arg) Или очищает (с помощью аргумента undefined) системный мониторинг, или задаёт новый с помощью аргумента {MonitorPid, Options}.

system_monitor(MonitorPid, Options) Устанавливает системный монитор.

system_profile() Возвращает текущие настройки системного профилирования.

system_profile(ProfilerPid, Options) Устанавливает системное профилирование.

system_time() Возвращает текущее “Системное время Эрланга”.

system_time(Unit) Возвращает текущее “Системное время Эрланга”, с указанием нужной единицы измерения.

term_to_binary(Term) Превращает произвольный терм в бинарник в так называемом внешнем формате, из которого его потом опять можно извлечь.

term_to_binary(Term, Options) Превращает произвольный терм в бинарник в так называемом внешнем формате, из которого его потом опять можно извлечь, с дополнительными опциями.

term_to_iovec(Term) Превращает произвольный терм в iovec, согласно т.н. внешнему формату.

term_to_iovec(Term, Options) Превращает произвольный терм в iovec, согласно т.н. внешнему формату, с дополнительными опциями.

throw(Any) Вызывает исключение класса throw, используемое для нелокального возвращения из функции.

time() Возвращает текущее время как {Часы, Минуты, Секунды}.

time_offset() Возвращает текущее время сдвига между монотонным временем Эрланга и системным временем Эрланга.

time_offset(Unit) Возвращает текущее время сдвига между монотонным временем Эрланга и системным временем Эрланга, с указанием единицы измерения.

timestamp() Возвращает текущее системное время Эрланга в формате {MegaSecs, Secs, MicroSecs}.

tl(List) Возвращает хвост списка. Может работать с неправильными списками.

trace(PidPortSpec, How, FlagList) Включает или выключает флаги трассировки.

trace_delivered(Tracee) Вызов этой функции нужен для уверенности, что все сообщения трассировки были отправлены.

trace_info(PidPortFuncEvent, Item) Возвращает информацию о трассировке.

trace_pattern(MFA, MatchSpec) Эквивалент trace_pattern/3, нужный для обратной совместимости.

trace_pattern(MFA, MatchSpec, FlagList) Устанавливает шаблон трассировки.

trunc(Number) Отбрасывает дробную часть числа, возвращая целое. Может принимать и целое.

tuple_size(Tuple) Возвращает количество элементов кортежа.

tuple_to_list(Tuple) Превращает кортеж в аналогичный список.

unalias(Alias) Отменяет псевдоним актора.

unique_integer() Генерирует и возвращает уникальное для данной системы целое число (с каждым вызовом число будет точно иным).

unique_integer(ModifierList) Генерирует и возвращает уникальное для данной системы целое число (с каждым вызовом число будет точно иным), с дополнительными опциями: positive или monotonic.

universaltime() Возвращает текущую дату и время в соответствии с UTC — в формате {{Год, Месяц, Число},{Часы, Минуты, Секунды}}.

universaltime_to_localtime(Universaltime) Конвертирует глобальное время (UTC) в локальное.

unlink(Id) Убирает линк между акторами (портами) по идентификатору.

unregister(RegName) Удалить регистрацию пида или порта по её имени-атому.

whereis(RegName) Узнать (проверить) регистрацию по данному имени-атому; если есть, то возвращает пид или порт, если нет, то undefined.

yield() Манипуляции с приоритетом текущего процесса (грозящие снизить производительность системы).


Copyright © 2025 Алексей Карманов