node

二叉树四种遍历方法

ぃ、小莉子 提交于 2020-02-26 11:01:27
class Node ( object ) : def __init__ ( self , item ) : self . item = item self . lchild = None self . rchild = None class Tree ( object ) : """二叉树""" def __init__ ( self ) : self . root = None def add ( self , item ) : node = Node ( item ) if self . root is None : self . root = node return None queue = [ self . root ] while queue : cur = queue . pop ( 0 ) if cur . lchild is None : cur . lchild = node return None else : queue . append ( cur . lchild ) if cur . rchild is None : cur . rchild = node return None else : queue . append ( cur . rchild ) def breadth_travel ( self ) : """广度遍历""" queue =

node的httpserver简单创建

天涯浪子 提交于 2020-02-26 09:58:53
1.设计原则为文件夹名字可以依据资源来命名,静态资源统一命名 ps:路径中绝对和相对路径,依据server.js本身的位置而言 const http = require("http"); const url = require("url"); const fs = require("fs"); const server = http.createServer(); server.on("request",(req,res)=>{ console.info(req.url); if(req.url.indexOf("/index.html") != -1){ fs.readFile("../index.html","utf-8",(err,data)=>{ if(err){console.info("error read");return} res.end(data); }) }else if(req.url.indexOf("game") != -1){ fs.readFile("../" + req.url,"utf-8",(err,data)=>{ if(err){console.info("error read");return} res.end(data); }) }else{ res.end("404"); } }) server.listen(5080,"127.0.0

Binder死亡通知机制之linkToDeath

拈花ヽ惹草 提交于 2020-02-26 09:41:00
copy from : http://gityuan.com/2016/10/03/binder_linktodeath/ 基于Android 6.0源码, 涉及相关源码 frameworks/base/core/java/android/os/Binder.java frameworks/base/core/jni/android_util_Binder.cpp frameworks/native/libs/binder/BpBinder.cpp 一. 概述 死亡通知是为了让Bp端(客户端进程)进能知晓Bn端(服务端进程)的生死情况,当Bn端进程死亡后能通知到Bp端。 定义:AppDeathRecipient是继承IBinder::DeathRecipient类,主要需要实现其binderDied()来进行死亡通告。 注册:binder->linkToDeath(AppDeathRecipient)是为了将AppDeathRecipient死亡通知注册到Binder上。 Bp端只需要覆写binderDied()方法,实现一些后尾清除类的工作,则在Bn端死掉后,会回调binderDied()进行相应处理。 1.1 实例说明 public final class ActivityManagerService { private final boolean

linux命令起node服务使用

╄→гoц情女王★ 提交于 2020-02-26 07:34:18
1.查看当前目录 ls 2.进入目录 cd 路径 3.将 node服务 挂后台启动 nohup command & node server . js & 挂起后 按任意键返回shell命令行,输入exit可关闭shell窗口 4.关闭 nohup后台启动的 node服务 netstat - tunlp 输入此命令 查看当前启动服务的端口进程PID (此处启动的是13000端口) 接着kill掉进程即可 (例子:kill -9 13436) kill - 9 PID 来源: CSDN 作者: DemoJx 链接: https://blog.csdn.net/DemoJx/article/details/104430784

Centos6安装安装node.js

余生颓废 提交于 2020-02-26 05:28:57
install node v7.x curl --silent --location https://rpm.nodesource.com/setup_7.x | bash - #设置镜像 npm config set registry=http://registry.npm.taobao.org #安装nodejs sudo yum install nodejs #验证安装情况 node -v npm -v install node v8.x curl --silent --location https://rpm.nodesource.com/setup_8.x | bash - sudo yum install -y nodejs #验证安装情况 node -v npm -v install node v4.x 一.准备工作 1.安装gcc yum install make libssl-dev scl-utils g++ gcc gcc-c++ openssl-devel bzip2-devel pkgconfig 2.卸载npm 和 Node.js npm uninstall npm -g yum remove nodejs npm -y 3.升级python 升级步骤: https://blog.51cto.com/qiangsh/1979284 二、编译安装node

解决npm install时报错无法安装chromedriver的问题

别说谁变了你拦得住时间么 提交于 2020-02-26 05:28:48
最近使用vue开发了一个前端项目,开发好后准备部署到服务器上。从git仓库拉下项目代码后,运行 npm install 安装项目所依赖的模块时却报错了,错误信息如下: > chromedriver@2.41.0 install /app/developer/git-repository/back_admin_front/node_modules/chromedriver > node install.js /app/developer/git-repository/back_admin_front/node_modules/chromedriver/chromedriver is not writable: EACCES: permission denied, mkdir '/app/developer/git-repository/back_admin_front/node_modules/chromedriver/chromedriver' Downloading https://chromedriver.storage.googleapis.com/2.41/chromedriver_linux64.zip Saving to /tmp/chromedriver/chromedriver_linux64.zip Received 781K... Received 1575K.

node 文件操作工具库 fs-extra

你说的曾经没有我的故事 提交于 2020-02-26 05:01:31
github https://github.com/jprichardson/node-fs-extra promise封装版, 比之前的回调函数更加顺手 const fs = require('fs-extra') // Async with promises: fs.copy('/tmp/myfile', '/tmp/mynewfile') .then(() => console.log('success!')) .catch(err => console.error(err)) // Async with callbacks: fs.copy('/tmp/myfile', '/tmp/mynewfile', err => { if (err) return console.error(err) console.log('success!') }) // Sync: try { fs.copySync('/tmp/myfile', '/tmp/mynewfile') console.log('success!') } catch (err) { console.error(err) } // Async/Await: async function copyFiles () { try { await fs.copy('/tmp/myfile', '/tmp/mynewfile'

Node安装及搭建简单HTTP服务器

时光毁灭记忆、已成空白 提交于 2020-02-26 04:53:04
注:本文安装系统为mac,windows及其他系统下载对应安装包 ,mac下载后的安装包为apk文件,windows为msi文件。 安装 1.在网上下载node安装包, 官方网站 2.双击下载文件,按步骤安装,安装完成后就可以使用node和npm命令了。 3.打开终端 输入 node -v,终端将提示安装的node版本。 4.nodejs运行环境安装成功。 常用的指令: npm install moduleNames :安装Node模块 安装完毕后会产生一个node_modules目录,其目录下就是安装的各个node模块。 node的安装分为全局模式和本地模式。 一般情况下会以本地模式运行,包会被安装到和你的应用程序代码的本地node_modules目录下。 在全局模式下,Node包会被安装到Node的安装目录下的node_modules下。 全局安装命令为$npm install -g moduleName。 获知使用$npm set global=true来设定安装模式,$npm get global可以查看当前使用的安装模式。 npm view moduleNames :查看node模块的package.json文件夹 注意事项:如果想要查看package.json文件夹下某个标签的内容,可以使用$npm view moduleName labelName npm list

Kubernetes 核心概念简介

和自甴很熟 提交于 2020-02-26 03:28:20
Kubernets 中的Node, Pod,Replication Controller, Service 等都可以看作一种资源对象,这些资源几乎都可以通过使用Kubernetes提供的kubectl 工具执行增删改查,并将其保存在etcd中持久化储存。通过跟踪对比etcd库中保存的“资源预设状态”与当前环境中的实际资源状态进行对比,对差异资源状态进行纠错,来实现自动控制集群状态的功能。下面将分别介绍这个组件角色。 管理角色 Kubernetes中有两种管理角色,Master和Node. Master Master是Kubernetes集群的控制节点,所有对于Kubernetes的命令操作都需要在控制节点执行。Master一般运行如下进程: kube-apiserver: Kubernetes API Server, 提供了HTTP Rest接口的关键服务进程,是所有资源增,删,改,查的入口,也是集群控制的入口进程,kubectl是直接与 API Server交互的,默认监听 6443端口。 kube-controller-manager: 每个资源一般都对应有一个控制器,而controller manager就是负责管理这些控制器的,它是自动化的循环控制器,是Kubernetes的核心控制守护进程。默认监听10252端口。 kube-scheduler :