
Node.js通用计算
文章平均质量分 88
探索使用Node.js 进行通用计算,建立一整套数据生成、处理、显示的体系
fanjinzhi
1984年生,2008年注册
展开
-
Node.js通用计算13--通过node-addon-api调用CUDA
前一段时间,忙于捣鼓自己的兴趣爱好(天文摄影,有同样兴趣的可以私信我),没有机会继续更新,下面我们继续研究Node.js在通用计算方面的应用。提到通用计算,那必须要涉及CUDA的应用,毕竟这个年代,离开CUDA的生态,很多应用多无法实现,在那个GPU没有普及的年代,当年为了完成大规模的科学计算必须要申请超级计算机节点资源,而现在一个大学生买几块二手显卡便可以完成同样的工作,不经感叹科技进步给人们带来的方便。原创 2025-01-06 13:37:10 · 986 阅读 · 0 评论 -
Node.js通用计算12--Node.js调用C/C++(多线程计算)
node-addon-api的提供了一个名为AsyncWorker抽象类用于管理子线程的程序执行。原创 2024-12-20 14:45:51 · 471 阅读 · 0 评论 -
Node.js通用计算11--Node.js调用C/C++(hello world实现分析)
这个语句定义了一个 名为 “Method”的函数,返回值 Napi::String 类型,参数是 Napi::CallbackInfo& 类型。Napi::String 是 js中 string 类型在C++中对应的数据类型,Napi::CallbackInfo 是一个包含上游 Node.js运行时上下文环境的一个类型,其最重要的是包含了JS调用函数传递进来的参数。其参数可以用 info[0] info[1] 的形式获取。原创 2024-12-20 09:27:05 · 2094 阅读 · 0 评论 -
Node.js通用计算10-- Node.js调用c/c++(简介、工具)
写了那么多我们大概梳理一下 node-addon-api 封包使用的过程首先是按照规范编写C程序,程序里面要标注导出项有哪些(具体实现后面再说)。其次是编写binding.gyp文件,给出编译的选项然后是通过node-gyp编译这些文件具体使用时需要通过 require 导入( 或着通过 bindings 模块辅助),使用时与普通函数没有差别。后面我们将详细探讨 node-addon-api的一些使用。原创 2024-12-17 22:32:07 · 1893 阅读 · 0 评论 -
Node.js通用计算9--Node.js内置模块(process,child_process)
Process模块和Child_Process模块是两个截然不同的模块。process通过它来获得node进程相关的信息,比如运行node程序时的命令行参数,或者设置进程相关信息,比如设置环境变量。child_process是专门用于子进程管理的模块,主要功能是创建子进程。原创 2024-12-16 11:27:04 · 2349 阅读 · 0 评论 -
Node.js通用计算8--Node.js内置模块(buffer、stream)
JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。=Node.js 中的 Buffer 类是用于处理二进制数据的核心工具,提供了对二进制数据的高效操作。Buffer 类在处理文件操作、网络通信、图像处理等场景中特别有用。Buffer。原创 2024-12-16 00:29:29 · 670 阅读 · 0 评论 -
Node.js通用计算7--Node.js内置模块(os、path、fs)
path 模块是 Node.js 的核心模块之一,用于处理和操作文件和目录路径,提供跨平台的路径操作方法。Node.js 文件系统(fs 模块)模块中的方法均有异步和同步版本,例如读取文件内容的函数有异步的 fs.readFile() 和同步的 fs.readFileSync()。异步的方法函数最后一个参数为回调函数,回调函数的第一个参数包含了错误信息(error)。fs非阻塞版本需要在参数表写入回调函数,这会造成类似回调地狱的情况,为此fs模块专门给出了不需要在参数表中写入回调函数的Promise版本。原创 2024-12-15 22:43:09 · 885 阅读 · 0 评论 -
Node.js通用计算6--JavaScript模块导入导出
export 导出函数 或者 类时结尾不能有;(分号)原创 2024-12-15 16:26:48 · 187 阅读 · 0 评论 -
Node.js通用计算5--Node.js事件循环
事件循环是 Node.js 处理非阻塞 I/O 操作的核心机制,使得单线程能够高效处理多个并发请求。Node.js 是基于单进程的 JavaScript 运行时,利用事件循环来处理异步操作,如文件读取、网络请求和数据库查询。事件循环使得 Node.js 能够处理大量并发的 I/O 操作而不会导致线程阻塞,这是 Node.js 高效处理并发请求的关键。原创 2024-12-23 09:24:13 · 655 阅读 · 0 评论 -
Node.js通用计算4--JavaScript异步编程
所谓异步编程也就是在时间线上语句开始执行后不会等待语句执行完,直接进入下一条语句。比方说有下面一个场景:一个下午,小明在书房做作业,妈妈在客厅看电视。func1();//小明做作业func2();//妈妈看电视程序实际上是先执行完 func1(小明做作业) 再执行 func2(妈妈看电视)。用图表示如下:因为小明写作业这件事与妈妈看电视可以同时做,因此我们希望的执行顺序如下图:让需要长时间等待的操作在后台运行,而不影响前台程序执行,这便是异步编程的思想。原创 2024-12-15 14:50:15 · 601 阅读 · 0 评论 -
Node.js通用计算3--JavaScript对象
面向对象语言中 this 表示当前对象的一个引用。JavaScript 中 this 不是固定不变的,它会随着执行环境的改变而改变。原创 2024-12-15 13:02:43 · 258 阅读 · 0 评论 -
Node.js通用计算2--JavaScript数据类型和运算符
此文大部分为抄袭网上现有知识,这里只相当于提纲挈领的做个笔记,具体的可以参看,上面写的比我详细的多。原创 2024-12-15 11:22:41 · 712 阅读 · 0 评论 -
Node.js 通用计算1--环境搭建
然而无论C还是Python都一个致命的缺陷,就是数据可视化显示的问题,C除了Qt框架几乎没有跨平台的方式,Python虽然有matplot但速度功能都稍显一般,更要命的是他们对客户端的部署环境都有着严苛的要求,需要安装复杂的运行环境,对于一些没有安装运行环境的电脑,无法随时查看服务器端产生的数据。前面也说了脚本语言有脚本语言的优势,有没有一种既是脚本语言又有相对快的速度还能和Web框架相统一的语言呢,答案有:这就是。本文的目的就是和大家一起,从零开始共同研究Node.js在科学计算上的应用。原创 2024-12-15 10:16:07 · 326 阅读 · 0 评论