Easter79 Easter79
3年前
tbox新增stackless协程支持
tbox之前提供的stackfull协程库,虽然切换效率已经非常高了,但是由于每个协程都需要维护一个独立的堆栈,内存空间利用率不是很高,在并发量非常大的时候,内存使用量会相当大。之前考虑过采用stacksegment方式进行内存优化,实现动态增涨,但是这样对性能还是有一定的影响,暂时不去考虑了。最近参考了下boost和protothreads的st
Easter79 Easter79
3年前
synchronized在jdk1.6之后引入的一些优化方案
自旋锁    jdk1.6之后默认开启,可以使用参数XX:UseSpinning控制,自旋等待不能代替阻塞,且先不说对处理器数量的要求,自旋等待本身虽然避免了线程切换的开销,但它是要占用处理器时间的,因此,如果锁被占用的时间很短,自旋等待的效果就会非常好,反之,如果锁被占用的时候很长,那么自旋的线程只会白白消耗处理器资源,而不会做任何有用的工
Python进阶者 Python进阶者
3年前
手把手教你用Java打造一款简单故事书(上篇)
一、项目背景随着移动互联网的发展,电子版的书成为现在主流,针对用户的需求,有的放矢地呈现给用户,阅读电子版书,提高他们的学习效率。二、项目目标1.实现美观的界面。2.能够基本实现改变字号、字体、字形、颜色、壁纸等选择,按钮页面切换功能。3.java读取txt文件,简化代码。三、项目实施使用eclipse软件开发,先上效果图,如下图所示。可以看到在界面上有
Stella981 Stella981
3年前
Python实现多进程
Python可以实现多线程,但是因为GlobalInterpreterLock(GIL),Python的多线程只能使用一个CPU内核,即一个时间只有一个线程在运行,多线程只是不同线程之间的切换,对多核CPU来说,就是巨大的浪费。如4核CPU,实际上只利用了一个核,CPU利用率只有25%。要充分利用多核CPU,可以实现Python的多进程。首先,im
Wesley13 Wesley13
3年前
mysql主从复制原理
MySQL的主从同步是一个很成熟的架构,优点为:①在从服务器可以执行查询工作(即我们常说的读功能),降低主服务器压力;②在从主服务器进行备份,避免备份期间影响主服务器服务;③当主服务器出现问题时,可以切换到从服务器。mysql主(称master)从(称slave)复制的原理:1、master将数据改变记录到二进制日志(binarylog
Wesley13 Wesley13
3年前
2.初步认识Angular2
简述:一个完整的Angular应用主要由六个重要部分构成,分别是:组件,模板,指令,服务,依赖注入,和路由.这些组成部分各司其职,而又紧密协作.其中,与用户直接打交互的是模板视图,它是构成组件的要素之一.另一要素是组件类,用以维护组件的数据模型及功能逻辑.路由的功能是控制组件的创建和销毁,从而驱使应用界面跳转切换/指令与模板相互关联,最重要
Stella981 Stella981
3年前
Redis入门教程
一、基础知识1.1数据库在Redis里,数据库简单的使用一个数字编号来进行辨认,默认数据库的数字编号是0。如果你想切换到一个不同的数据库,你可以使用select命令来实现。在命令行界面里键入select1,Redis应该会回复一条OK的信息,然后命令行界面里的提示符会变成类似redis127.0.0.1:6379\1\
Stella981 Stella981
3年前
Cocos Creator基础教程(12)—精灵变身
在CocosCreator中使用率最高的非精灵(Sprite)莫属了,在游戏中我们经常会遇到将一张图片替换成另一张图片的情况,或者是在不同状态时来回切换图片。实现这个功能对程序员同学来说并不难,但是!回头检视一下编写的代码,能否让美术、策划同学使用上吗?如果不能的话,相信这篇教程可能对你和你的伙伴有更多启发!1\.SpriteIndex组件
Stella981 Stella981
3年前
Linux的bg和fg命令
我们都知道,在Windows上面,我们要么让一个程序作为服务在后台一直运行,要么停止这个服务。而不能让程序在前台后台之间切换。而Linux提供了fg和bg命令,让我们轻松调度正在运行的任务。假设你发现前台运行的一个程序需要很长的时间,但是需要干其他的事情,你就可以用CtrlZ,挂起这个程序,然后可以看到系统提示(方括号中的是
芝士年糕 芝士年糕
2年前
在centos上安装Anaconda
介绍:Anaconda包括Conda、Python以及一大堆安装好的工具包,比如:numpy、pandas等Miniconda包括Conda、Pythonconda是一个开源的包、环境管理器,可以用于在同一个机器上安装不同版本的软件包及其依赖,并能够在不同的环境之间切换环境:使用3A服务器远程搭建的centos上操作1、使用wget下载安装包wget ht