在erl shell下按下CTRL+C的时候
erts_printf("\n" "BREAK: (a)bort (c)ontinue (p)roc info (i)nfo (l)oaded\n" " (v)ersion (k)ill (D)b-tables (d)istribution\n");
但是实际上可以有更多功能 看代码:
while (1) {
if ((i = sys_get_key(0)) <= 0)
erl_exit(0, "");
switch (i) {
case 'q':
case 'a':
case '*': /*
* The asterisk is an read error on windows,
* where sys_get_key isn't that great in console mode.
* The usual reason for a read error is Ctrl-C. Treat this as
* 'a' to avoid infinite loop.
*/
erl_exit(0, "");
case 'A': /* Halt generating crash dump */
erl_exit(1, "Crash dump requested by user");
case 'c':
return;
case 'p':
process_info(ERTS_PRINT_STDOUT, NULL);
return;
case 'm':
return;
case 'o':
port_info(ERTS_PRINT_STDOUT, NULL);
return;
case 'i':
info(ERTS_PRINT_STDOUT, NULL);
return;
case 'l':
loaded(ERTS_PRINT_STDOUT, NULL);
return;
case 'v':
erts_printf("Erlang (%s) emulator version "
ERLANG_VERSION "\n",
EMULATOR);
erts_printf("Compiled on " ERLANG_COMPILE_DATE "\n");
return;
case 'd':
distribution_info(ERTS_PRINT_STDOUT, NULL);
return;
case 'D':
db_info(ERTS_PRINT_STDOUT, NULL, 1);
return;
case 'k':
process_killer();
return;
#ifdef OPPROF
case 'X':
dump_frequencies();
return;
case 'x':
{
int i;
for (i = 0; i <= HIGHEST_OP; i++) {
if (opc[i].name != NULL) {
erts_printf("%-16s %8d\n", opc[i].name, opc[i].count);
}
}
}
return;
case 'z':
{
int i;
for (i = 0; i <= HIGHEST_OP; i++)
opc[i].count = 0;
}
return;
#endif
#ifdef DEBUG
case 't':
p_slpq();
return;
case 'b':
bin_check();
return;
case 'C':
abort();
#endif
case '\n':
continue;
default:
erts_printf("Eh?\n\n");
}
}
好多调试用的功能 希望对大家有用。
分享到:
相关推荐
3.8.x系列引入了许多新功能和改进,包括增强的监控和管理工具、对TLS/SSL的支持、更灵活的插件机制等。此版本可能包含了性能优化、错误修复和安全更新,以确保可靠性和安全性。 **AMQP协议**: AMQP是一种开放标准,...
在本压缩包“rabbitMq3.8.15+erl64_23.0.7z”中,包含的是RabbitMQ 3.8.15版本以及对应版本的Erlang运行环境,Erlang是RabbitMQ的基础,因为RabbitMQ是用Erlang编程语言编写的。 1. **RabbitMQ基本概念** - **消息...
标题中的"erl:otp_src_24.0.5.tar.gz"指的是Erlang的源码包,其中"otp_src_24.0.5"是Erlang/OTP (Open Telecom Platform) 的24.0.5版本的源代码。Erlang是一种面向并发的、函数式的编程语言,常用于构建高可用性和...
在Erlang中,`NIF (Native Implemented Functions)` 是一种机制,允许开发者使用其他语言(如C或Rust)编写高效性能的代码,并在Erlang虚拟机中调用。本篇主要介绍如何利用Rust语言来开发Erlang NIF,并探讨`erl_nif...
"candy.erl","dungeon_game.erl", "interleaving_string.erl","search_insert_position.erl", "three_sum.erl","trapping_rain_water.erl", "valid_palindrome.erl" 个人认为dungeon_game这个题目解题逻辑很体现...
标题中的“ERL+B表+爱尔兰+B表”指的是在通信领域中使用的一种计算模型,即爱尔兰公式(Erlang Formula)及其衍生出的B表。爱尔兰公式是电信系统设计和容量规划中的核心工具,用于估算呼叫中心、通信网络或任何服务...
通过`erl_nif`,开发者可以充分利用Erlang的并发特性,同时利用C语言的效率,创建出性能强大且功能丰富的Erlang应用。不过,使用NIFs也带来了复杂性,比如增加了代码维护的难度,以及可能破坏Erlang的容错性和并发...
erlang高性能网络库esockd的编译和使用,erlang高性能网络库esockd的编译和使用
4. 确保在环境变量中添加Erlang的bin目录,以便命令行可以找到erl等Erlang命令。 5. 完成安装后,通过运行`erl`命令检查Erlang是否成功安装。 **RabbitMQ 3.10.7 安装** 1. 获取RabbitMQ 3.10.7的安装包,通常为`....
**Erl_B表查询小工具** 是一个专为处理Erl_B数据的实用程序,它提供了用户友好的界面,使得对Erl_B表的查询变得简单而高效。Erl_B通常指的是Erlang B模型,这是一个在电信行业中广泛使用的数学模型,用于估算交换机...
标题"erl+rabbitMQ"表明我们关注的是Erlang编程语言以及RabbitMQ消息队列系统。Erlang是一种面向并发的、通用的、函数式编程语言,尤其适合构建分布式系统。RabbitMQ则是基于Erlang开发的一款开源消息代理,它实现了...
4. 完成安装后,可以在命令行输入`erl`来验证Erlang是否安装成功。 接下来是安装RabbitMQ 3.8.1步骤: 1. 访问RabbitMQ官网,找到适用于Windows的RabbitMQ服务器3.8.1版本。 2. 下载并运行安装程序,按照提示进行...
为了学习rabbitmq下载的,分享出来,有用自取,安装出来是ERL8.3,不懂的SB不要下了
erl_migrate 升级/降级架构和迁移erlang应用程序数据库数据的工具 安装 运行make deps以安装depident 运行make来编译代码 用法 参数Options数据结构是map 创建迁移src文件 Args = #{ schema_name => mhs, ...
1. **性能提升**:`erl_protobuffs`经过优化,相比其他Erlang的protobuf实现,如`protobuf-erl`或`thrift`,其解析和编码速度更快。这得益于Erlang自身的并发特性和轻量级进程,以及`erl_protobuffs`内部的高效算法...
erl_to_html 使用解析变换和erl_id_trans.erl Erlang的代码转换为HTML,跨度的一切。...我不知道我需要怎么做许可证,但是由于我是从Erlang示例代码中复制erl_id_trans.erl,因此我正在使用Erlang公共许可证。
The Kernel application is the first application ...• erl_boot_server • erl_ddll • error_logger • file • global • global_group • heart • inet • net_kernel • os • pg2 • rpc • seq_trace • user
计算ERL的小工具计算ERL的小工具计算ERL的小工具计算ERL的小工具