首页 \ 问答 \ C/C++异常处理机制 throw try catch.........

C/C++异常处理机制 throw try catch.........

C ++异常处理机制强大不...... 我觉得不怎么好用啊,把它放在主函数中,会破坏程序的可读性...... 而且不能发现问题,并使用户改正问题,得到正确输入再继续执行程序...  我一般用的是,在函数块中,建立一个循环,当用户非法操作时,提示用户重新操作,直到操作正确,程序再继续执行......... 大家看法呢???
更新时间:2023-05-13 19:05

最满意答案

Node.js优点:
1、采用事件驱动异步编程,为网络服务而设计。其实Javascript的匿名函数和闭包特性非常适合事件驱动、异步编程。而且JavaScript也简单易学,很多前端设计人员可以很快上手做后端设计。
2、Node.js非阻塞模式的IO处理给Node.js带来在相对低系统资源耗用下的高性能与出众的负载能力,非常适合用作依赖其它IO资源的中间层服务。3、Node.js轻量高效,可以认为是数据密集型分布式部署环境下的实时应用系统的完美解决方案。Node非常适合如下情况:在响应客户端之前,您预计可能有很高的流量,但所需的服务器端逻辑和处理不一定很多。

Node.js缺点:
1、可靠性低
2、单进程,单线程,只支持单核CPU,不能充分的利用多核CPU服务器。一旦这个进程崩掉,那么整个web服务就崩掉了。

其他回答

一个规模稍微大点的系统都不是一种开发语言可以搞定的,往往是几种混杂一起,比如c、c++做服务器端开发,java做业务逻辑,php等做前端展示,此外还需要消息中间件等等。
nodejs可以很快地在服务器端做原型(原来只有c系和java等能做的事情,性能还很高),而且代码量相对会少很多;另一点是它的语法优势,js闭包等。但它不太适合做cpu密集型处理的工作,只能绕着弯去解决,据说这次qcon会有人分享这方面的研究成果,可以关注下。
每种语言都有它适合的领域,没必要强求一门语言可以解决所有事情,拥有其它语言的特性,只有不断的tradeoff把系统做出来才是目标。

相关问答

更多
  • 声明:没有一种绝对好的语言。 Node.js > Python 的地方 快:这个快有两方面,第一是V8引擎快,在V8引擎背后操刀的是Lars Bak大神,他创造过高性能SmallTalk引擎和Java Hotspot引擎(现在Java的默认VM),他带领下的V8引擎让Javascript速度达到了一个新的阶段。第二是异步执行,Node.js功能上是一个基于V8引擎的异步网络和IO Library,和Python的Twisted很像,不同的是Node.js的event loop是很底层的深入在语言中的,可以想 ...
  • Node.js优点: 1、采用事件驱动、异步编程,为网络服务而设计。其实Javascript的匿名函数和闭包特性非常适合事件驱动、异步编程。而且JavaScript也简单易学,很多前端设计人员可以很快上手做后端设计。 2、Node.js非阻塞模式的IO处理给Node.js带来在相对低系统资源耗用下的高性能与出众的负载能力,非常适合用作依赖其它IO资源的中间层服务。3、Node.js轻量高效,可以认为是数据密集型分布式部署环境下的实时应用系统的完美解决方案。Node非常适合如下情况:在响应客户端之前,您预计可 ...
  • 那么有些人不介意使用Node而不是nginx。 诸如dotCloud或Nodejistu的某些云使用完全用Node.js写入的网关。 主要是为了能够处理websocket。 但也因为Node.js速度非常快。 这是最近开源的dotCloud网关https://github.com/dotcloud/hipache Well some people don't mind using Node instead of nginx. Certain clouds like dotCloud or Nodejistu ...
  • 一个规模稍微大点的系统都不是一种开发语言可以搞定的,往往是几种混杂一起,比如c、c++做服务器端开发,java做业务逻辑,php等做前端展示,此外还需要消息中间件等等。 nodejs可以很快地在服务器端做原型(原来只有c系和java等能做的事情,性能还很高),而且代码量相对会少很多;另一点是它的语法优势,js闭包等。但它不太适合做cpu密集型处理的工作,只能绕着弯去解决,据说这次QCon会有人分享这方面的研究成果,可以关注下。 每种语言都有它适合的领域,没必要强求一门语言可以解决所有事情,拥有其它语言的特性 ...
  • 我只是一个下巴的时刻 - Termux允许您在Android设备上安装NodeJS ! 这似乎是为我工作的基本的Websocket速度测试我手头。 它所服务的http可以在本地和网络上访问。 有一个中等职位说明安装过程 基本上:1.安装termux 2. apt安装nodejs 3.节点! 我遇到的一个限制 - 似乎共享文件夹没有必要的权限来安装模块。 它可能只是一个文件许可的事情。 私人应用程序存储工作正常。 I just had a jaw-drop moment - Termux allows you ...
  • 事件是异步的非阻塞I / O构建在V8上 。 所以我们拥有V8的所有性能优势,这是Google JavaScript解释器。 由于JavaScript性能竞赛还没有结束,您可以期望Google不断更新V8的性能(免费)。 我们有非阻塞I / O,这是I / O的正确方法。 这是基于事件循环,并为您的I / O使用异步回调。 它为您提供了有用的工具,如创建HTTP服务器,创建TCP服务器,处理文件I / O。 这是一个低级别的高性能平台,用于执行任何类型的I / O,而无需从头开始将全部内容写入C中。 并且由 ...
  • React.js是一个JavaScript库,用于在浏览器上提供基于组件的前端开发。 另一方面,node.js是基于Google V8引擎的JavaScript运行时,也称为Chrome的JavaScript引擎。 使用Node.js,你可以建立你自己的服务器。 我假设你的问题出现了,因为你想出了一个用于react.js应用程序的node.js开发服务器。 任何Web应用程序都需要一个服务器来用适当的资产来响应客户的请求 这些资产可以是HTML,CSS,JS以及可用于您的网络应用程序的任何媒体。 换句话说, ...
  • 在我的应用程序中,我使用Bouncy : var bouncy = require( "bouncy" ); var server = bouncy(function( req, res, bounce ) { var port; var subdomain = req.headers.host.split( "." )[ 0 ]; switch ( subdomain ) { case "xyz": port = 4002; ...
  • 看到这个问题: 多核机器上的Node.js 基本上只需运行多个进程并让它们进行通信。 See this question: Node.js on multi-core machines Basically just run multiple processes and have them communicate.
  • 这真的取决于你的应用程序。 如果使用固定大小的线程池,则如果请求数>可用线程数,则必须实现队列,这可能会导致一些拥塞。 最好的方法(在我看来当然)是为每个请求生成一个新线程,它处理AES,UUID和数据。 也就是说,每个请求执行所有计算的一个线程。 一切都完成后,从线程返回结果并将其终止。 这当然可以在高负载服务器上产生许多线程; 但会保持你的事件循环清晰。 编辑: 这个帖子可能对你有意思。 It really depends on your application. If you use a fixed- ...

相关文章

更多

最新问答

更多
  • 如何使用自由职业者帐户登录我的php网站?(How can I login into my php website using freelancer account? [closed])
  • 如何打破按钮上的生命周期循环(How to break do-while loop on button)
  • C#使用EF访问MVC上的部分类的自定义属性(C# access custom attributes of a partial class on MVC with EF)
  • 如何获得facebook app的publish_stream权限?(How to get publish_stream permissions for facebook app?)
  • 如何并排放置两个元件?(How to position two elements side by side?)
  • 在MySQL和/或多列中使用多个表用于Rails应用程序(Using multiple tables in MySQL and/or multiple columns for a Rails application)
  • 如何隐藏谷歌地图上的登录按钮?(How to hide the Sign in button from Google maps?)
  • Mysql左连接旋转90°表(Mysql Left join rotate 90° table)
  • 带有ImageMagick和许多图像的GIF动画(GIF animation with ImageMagick and many images)
  • 电脑高中毕业学习去哪里培训
  • 电脑系统专业就业状况如何啊?
  • IEnumerable linq表达式(IEnumerable linq expressions)
  • 如何在Spring测试中连接依赖关系(How to wire dependencies in Spring tests)
  • Solr可以在没有Lucene的情况下运行吗?(Can Solr run without Lucene?)
  • 如何保证Task在当前线程上同步运行?(How to guarantee that a Task runs synchronously on the current thread?)
  • 在保持每列的类的同时向数据框添加行(Adding row to data frame while maintaining the class of each column)
  • 的?(The ? marks in emacs/haskell and ghc mode)
  • 一个线程可以调用SuspendThread传递自己的线程ID吗?(Can a thread call SuspendThread passing its own thread ID?)
  • 延迟socket.io响应,并“警告 - websocket连接无效”(Delayed socket.io response, and “warn - websocket connection invalid”)
  • 悬停时的图像转换(Image transition on hover)
  • IIS 7.5仅显示homecontroller(IIS 7.5 only shows homecontroller)
  • 没有JavaScript的复选框“关闭”值(Checkbox 'off' value without JavaScript)
  • java分布式框架有哪些
  • Python:填写表单并点击按钮确认[关闭](Python: fill out a form and confirm with a button click [closed])
  • PHP将文件链接到根文件目录(PHP Linking Files to Root File Directory)
  • 我如何删除ListView中的项目?(How I can remove a item in my ListView?)
  • 您是否必须为TFS(云)中的每个BUG创建一个TASK以跟踪时间?(Do you have to create a TASK for every BUG in TFS (Cloud) to track time?)
  • typoscript TMENU ATagParams小写(typoscript TMENU ATagParams lowercase)
  • 武陟会计培训类的学校哪个好点?
  • 从链接中删除文本修饰(Remove text decoration from links)