热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

5.编译并运行erlang程序

为什么80%的码农都做不了架构师?1.停止erlang系统方法:ctrlC(Windows下ctrlBreak).不可控关闭BIF函数࿱

为什么80%的码农都做不了架构师?>>>   hot3.png

1.停止erlang系统方法:
   ctrl+C(Windows下 ctrl+Break).
   不可控关闭BIF函数: erlang:halt() 强制停止系统(小瑕疵:对于大型的数据库操作程序,可能在下次需要进行一些回复操作)
   可控关闭:q().该函数是init:stop()在shell中的简写,该操作会做一些清除和关闭操作,保证系统正确关闭
2.为文件加载器设定加载路径
   code:get_path(). 获得当前设定的文件加载路径列表
   @spec code:add_patha(Dir) 增加新目录到当前加载路径列表的开头
   @spec code:add_patha(Dir) 增加新目录到当前加载路径列表的末尾
   @spec code:all_loaded()   返回所有加载的模块,有利于确定那些模块加载出错
   @spec code:clash() 分析加载目录是否有重复模块
   注:code模块有些函数可以用来分析加载路径
   init:get_argument(home) 获得erlang系统所需的home目录
3. erlang程序运行方式
   erlang代码如下
   -module(hello).
   -export([start/0]).

   start() ->
    io:format("Hello world~n").
   (1). shell中编译运行:
       c(hello).
       hello:start().
   (2). 命令行中编译运行:
       F:\programming\Erlang\erlang程序设计中文版\code>erlc hello.erl
       F:\programming\Erlang\erlang程序设计中文版\code>erl -noshell -s hello start -s init stop
   (3). window下bat批处理文件中运行
       "D:\erlang5\bin\erl.exe" -noshell -s hello start -s init stop
   (4). 快速脚本
        erl -eval 'io:format("Memory:~p~n",[erlang:memory(total)])' -noshell -s init stop (windows下无输出)
   (5). escript脚本运行,代码不会编译为beam字节码(在window下是否运行,待研究)
        脚本文件名:hello
        #!/usr/bin/env escript
        main(_) ->
            io:format("Hello world\n").
        在unix下运行: chmod u+x hello
                       ./hello
        在window下运行:escript hello
4.使用makefile进行自动编译
5.解决系统死锁问题
6.shell无响应  shell JCL(shell job control languge) 在Eshell V5.6.2中不起作用或着这仅仅是在window下的问题,linux待验证(待解决)
7.获得erlang帮助  112页
8.erlang崩溃转储文件分析 webtool:start().


转载于:https://my.oschina.net/sinpo/blog/42068


推荐阅读
  • 解决针织难题:R语言编程技巧与常见错误分析 ... [详细]
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
  • PTArchiver工作原理详解与应用分析
    PTArchiver工作原理及其应用分析本文详细解析了PTArchiver的工作机制,探讨了其在数据归档和管理中的应用。PTArchiver通过高效的压缩算法和灵活的存储策略,实现了对大规模数据的高效管理和长期保存。文章还介绍了其在企业级数据备份、历史数据迁移等场景中的实际应用案例,为用户提供了实用的操作建议和技术支持。 ... [详细]
  • Python 序列图分割与可视化编程入门教程
    本文介绍了如何使用 Python 进行序列图的快速分割与可视化。通过一个实际案例,详细展示了从需求分析到代码实现的全过程。具体包括如何读取序列图数据、应用分割算法以及利用可视化库生成直观的图表,帮助非编程背景的用户也能轻松上手。 ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • 本文详细解析了使用C++实现的键盘输入记录程序的源代码,该程序在Windows应用程序开发中具有很高的实用价值。键盘记录功能不仅在远程控制软件中广泛应用,还为开发者提供了强大的调试和监控工具。通过具体实例,本文深入探讨了C++键盘记录程序的设计与实现,适合需要相关技术的开发者参考。 ... [详细]
  • MATLAB字典学习工具箱SPAMS:稀疏与字典学习的详细介绍、配置及应用实例
    SPAMS(Sparse Modeling Software)是一个强大的开源优化工具箱,专为解决多种稀疏估计问题而设计。该工具箱基于MATLAB,提供了丰富的算法和函数,适用于字典学习、信号处理和机器学习等领域。本文将详细介绍SPAMS的配置方法、核心功能及其在实际应用中的典型案例,帮助用户更好地理解和使用这一工具箱。 ... [详细]
  • PHP预处理常量详解:如何定义与使用常量 ... [详细]
  • 如何撰写适应变化的高效代码:策略与实践
    编写高质量且适应变化的代码是每位程序员的追求。优质代码的关键在于其可维护性和可扩展性。本文将从面向对象编程的角度出发,探讨实现这一目标的具体策略与实践方法,帮助开发者提升代码效率和灵活性。 ... [详细]
  • 本文详细介绍了批处理技术的基本概念及其在实际应用中的重要性。首先,对简单的批处理内部命令进行了概述,重点讲解了Echo命令的功能,包括如何打开或关闭回显功能以及显示消息。如果没有指定任何参数,Echo命令会显示当前的回显设置。此外,文章还探讨了批处理技术在自动化任务执行、系统管理等领域的广泛应用,为读者提供了丰富的实践案例和技术指导。 ... [详细]
  • 如何使用ES6语法编写Webpack配置文件? ... [详细]
  • 本文介绍了如何利用ObjectMapper实现JSON与JavaBean之间的高效转换。ObjectMapper是Jackson库的核心组件,能够便捷地将Java对象序列化为JSON格式,并支持从JSON、XML以及文件等多种数据源反序列化为Java对象。此外,还探讨了在实际应用中如何优化转换性能,以提升系统整体效率。 ... [详细]
  • 在 Linux 环境下,多线程编程是实现高效并发处理的重要技术。本文通过具体的实战案例,详细分析了多线程编程的关键技术和常见问题。文章首先介绍了多线程的基本概念和创建方法,然后通过实例代码展示了如何使用 pthreads 库进行线程同步和通信。此外,还探讨了多线程程序中的性能优化技巧和调试方法,为开发者提供了宝贵的实践经验。 ... [详细]
  • C++ 开发实战:实用技巧与经验分享
    C++ 开发实战:实用技巧与经验分享 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
author-avatar
手机用户2502904013
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有