郎总
码龄14年
关注
提问 私信
  • 博客:101,404
    社区:446
    101,850
    总访问量
  • 38
    原创
  • 1,026,495
    排名
  • 38
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:美国
  • 加入CSDN时间: 2011-03-08
博客简介:

whueratsjtuer的博客

查看详细资料
个人成就
  • 获得92次点赞
  • 内容获得18次评论
  • 获得276次收藏
创作历程
  • 19篇
    2019年
  • 5篇
    2018年
  • 3篇
    2017年
  • 12篇
    2016年
  • 7篇
    2015年
成就勋章
TA的专栏
  • java多线程编程
    5篇
  • React Native
    1篇
  • 设计模式
    2篇
  • 操作系统
    4篇
  • Javascript
    1篇
  • 闭包
    1篇
  • closure
    1篇
  • 原型
    1篇
  • prototype
    1篇
兴趣领域 设置
  • 数据结构与算法
    排序算法
创作活动更多

超级创作者激励计划

万元现金补贴,高额收益分成,专属VIP内容创作者流量扶持,等你加入!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

【React源码分析之一】JSX 转化成JS

我们在开发react 过程中一般都是用JSX, 相当于enhanced JavaScript. 能再JS代码中嵌入HTML.JSX是通过Babel翻译成JS代码的, 可以通过这个Babel playground来看看JSX中的html被翻译成什么JS代码function comp(){}<comp id='id' key='key'> <span>w...
原创
发布博客 2019.09.18 ·
552 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【Javascript】彻底搞懂闭包(closure)和原型(prototype)

首先讲讲为什么会有闭包和原型。Javascript的最初就是一款脚本语言(名字中带scrip就足以说明这一点),用来开发网页,所以语法简洁,没有面向对象语言的概念(多态,继承,封装。。。),甚至没有线程。为了实现多态,继承和封装,我们看看js是如何实现这些OOP特性的。封装封装的概念非常简单,就是将用户不需要知道的数据和方法隐藏起来,外部无法直接访问。在Java中,可以用privat...
原创
发布博客 2019.07.19 ·
605 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

【操作系统】进程与线程

为什么会有进程?以前的计算机性能较差,操作系统只支持单任务,也就是一次只能执行一个任务,当这个任务执行完成之后,才能执行下一个任务,例如MSDOS。当该任务进行IO时,CPU会处于空闲状态。随着计算机性能增强,出现了多任务操作系统,操作系统可以将多个任务同时加载到内存中,并发执行。当某个任务进行IO时,操作系统将该任务挂起,切换到其他需要执行任务(通过cpu中断技术实现)。因此,为了方便...
原创
发布博客 2019.06.26 ·
234 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【操作系统】文件系统(一)

Prerequiste: 磁盘的结构和工作原理为什么要引入文件系统?在大容量magnetic disk出现之前,数据和程序都是存储在磁带上,那时还没有文件的概念。当大容量的磁盘出现了以后,需要将数据或者程序存储在磁盘上。如果没有文件,我们只能自己管理数据在磁盘上的位置。例如一个程序或者数据被分成若干个子块,每个子块都分布在磁盘的不同的位置,读取一个数据时,要手动地逐个读取每个子块才能获取...
原创
发布博客 2019.06.25 ·
375 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

JS中的this问题

最近在使用react native开发安卓app的过程中,总是遇到this指针所在上下文切换,导致从this中调用对象或者方法时,总是报xxx is undefine, 这是因为JS中的this十分灵活,随着代码执行上下文的不同,this指针所指的当前对象也在不断变化。尤其是下面一种典型情况:在实现Component 的render 方法时,例如我们需要为一个button绑定一个onPress...
原创
发布博客 2019.05.17 ·
180 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【Https原理入门】

将数据加密在进行传输:一种方式:HostA: 文件---------> Rar(加密)------->传输-------->HostB:使用密码进行解压获取文件对称加密和非对称加密:对称秘钥加密:非对称加密: 公开秘钥加密。需要一对秘钥(私钥,公钥)。两个秘钥是数学相关。用某个user的秘钥加密所得的信息,只能用该用户的另一个密钥才能解密。只知道其中一个,并不...
原创
发布博客 2019.05.16 ·
194 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【计算机网络】不同网段内主机如何通信

学习计算机网络如果只是被动的接受知识的话,不但枯燥,效率低下,而且理解也不够深。这里我推荐一款网络仿真软件cisco packet tracer。这款软件最有价值的地方在于用户可以通过软件来模拟真实的网络,能够零成本搭建一套计算机网络。我们可以边学网络边用这个软件来进行仿真,验证所学知识。下载链接:https://www.netacad.com/courses/packet-tracer 学...
原创
发布博客 2019.04.30 ·
21045 阅读 ·
26 点赞 ·
0 评论 ·
147 收藏

【计算机网络】网络上两台主机是如何通过IP地址和MAC地址进行通信的

互联网上的两台主机HostA和 HostB想要进行通信的流程,那么主机A将需要知道自己的ip,mac 以及主机B的ip, mac。但是主机B的mac地址主机A是不知道的,于是主机A如果将他自己的IP与子网掩码进行 & 与运算得到一个ip1, 然后将主机B的ip与这个子网掩码进行相同运算得到一个ip2, 如果ip1 等于 ip2, 那么此时A与B属于同一子网。否则不属于一个子网。两台主...
原创
发布博客 2019.04.28 ·
8722 阅读 ·
12 点赞 ·
0 评论 ·
34 收藏

【计算机网络】计算机网络物理层,数据链路层和网络层的理解

对于初学者甚至许多计算机科班出身的同学来说,学习网络和操作系统一样,感觉十分抽象,学完总有一种朦朦胧胧的感觉,因为毕竟对于绝大多数人来说,工作中都不需要接触这些东西。但是作为一个较真的程序员,还是想慢慢深入理解其中的奥秘,这也就是我想边学边写博客的原因,也希望能给初学者一些借鉴。有疏漏之处,请不吝赐教!OSI将计算机网络可以分为七层模型,从底层网上分别是物理层,数据链路层,网络层,... ,应...
原创
发布博客 2019.04.28 ·
8892 阅读 ·
25 点赞 ·
1 评论 ·
33 收藏

【设计模式】Builder建造者模式

需求:当创建某一个对象的时候,必须按照的一定的顺序对成员变量进行初始化,所以为了避免用户在创建的时候打乱这个顺序,就有了Builder设计模式。非常简单有效,这种模式在许多框架中被大量使用。//假设我们在创建MyData对象的时候,需要用按照d1,d2,d3的顺序对它进行初始化public class MyData { private int d1; private i...
原创
发布博客 2019.04.23 ·
129 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【设计模式】一文彻底搞懂装饰器(Decorator)设计模式

网上关于装饰器(decorator)模式的教程很多,但是很少有能讲的很清楚的,所以有了这篇文章。在讲解装饰器模式之前,先看看为什么要使用装饰器模式。假设我们要为一个咖啡馆设计一套下单和结算系统,咖啡管的产品有茶,咖啡,橙汁三种产品,售价分别为5,10,15, 客人可以在饮料中加入一些搭配,比如咖啡可以加奶、加糖,橙汁可以加冰,茶也可以加奶。假设客人需要付费才能加配料。那我们先来思考一下如何...
原创
发布博客 2019.04.23 ·
384 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java 使用管程(monitor) 实现生产者-消费者模式

这是继java 使用synchronized, wait(), notifyAll() 实现生产者-消费者模式的下一篇。让我们先来看看什么是管程。管程的英文叫Monitor, 翻译过来时监视器的意思。为什么要使用管程呢? 之前使用信号量实现了同步互斥,但是信号量有个一个缺点,那就是P操作和V操作很容易搞错,如果一个地方进行了P操作,同步代码块执行完毕后忘记执行V操作,那么很容易引起死锁、饥饿等...
原创
发布博客 2019.04.23 ·
1753 阅读 ·
6 点赞 ·
1 评论 ·
13 收藏

React Native org.gradle.process.internal.ExecException: Process 'command 'node'' finished with non-z

最近被一个react native 的bug搞疯了,具体信息如下:app:bundleReleaseJsAndAssetsorg.gradle.process.internal.ExecException: Process 'command 'node'' finished with non-zero exit value 1结果发现是根目录下的.babelrc文件惹的祸,这个文件b...
原创
发布博客 2019.04.20 ·
4063 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java 实现一个同步的stack

用java 实现了一个线程安全的栈(参考了tomcat源码)public class SynchronizedStack<T> { public static final int DEFAULT_SIZE = 128; private static final int DEFAULT_LIMIT = -1; private int size; ...
原创
发布博客 2019.04.08 ·
364 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

java 使用信号量Semaphore实现生产者-消费者模式

这是继许上一篇java 使用synchronized, wait(), notifyAll() 实现生产者-消费者模式。信号量Semaphore,跟交通信号等非常类似(Semaphore翻译过来就是信号灯的意思),以下面这幅图为例如果两条铁轨都是空的,那么此时信号灯是绿色(信号量为2),允许火车通行。如果有列车请求通行则放行,同时信号灯变为黄色(信号量减一):当两条铁轨都有列车...
原创
发布博客 2019.04.03 ·
3101 阅读 ·
8 点赞 ·
1 评论 ·
20 收藏

java 使用synchronized, wait(), notifyAll() 实现生产者-消费者模式

对于任何一种模式,在实现之前我们都应该明确这种模式对线程同步及互斥的要求。对于生产者-消费者模式, 我们有如下同步及互斥要求:线程互斥要求生产者之间是互斥的,也即同时只能有一个生产者进行生产 消费者之间是互斥的,也即同时只能有一个消费者进行消费 生产者消费者之间是互斥的,也即生产者消费者不能同时进行生产和消费线程同步要求容器满时,生产者进行等待 容器空是,消费者进行等待有了上述需...
原创
发布博客 2019.04.02 ·
634 阅读 ·
5 点赞 ·
0 评论 ·
7 收藏

Java 多线程 锁重入的理解

// 锁的重入,synchronized是可重入的public class Demo { public synchronized void a(){ try { Thread.sleep(3000); } catch (InterruptedException e) { e.printStackTrace(...
原创
发布博客 2019.04.02 ·
211 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

彻底搞清楚 java 多线程单例模式(singleton)的双重检查锁

不涉及多线程的情况下实现单例模式是非常简单的,有两种实现方式,Lazy 和 Eager 模式:public class SingletonEager { //Eager模式,当Singleton被ClassLoader加载的时候创建Singleton对象 private static SingletonEager _instance = new SingletonEager(...
原创
发布博客 2019.04.02 ·
238 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

用java Thread interrupt的时候为啥会抛出异常

在用java Thread interrupt的时候为啥会抛出异常?```public class Demo1 extends Thread { @Override public void run(){ while (!interrupted()) { try { Thread.sleep(200);...
原创
发布博客 2019.03.31 ·
934 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

【系统设计】设计一个TinyURL系统

题目:设计一个短连接服务,可以将长链接转换为短连接,也可以通过短连接访问目标网站系统设计的SNAKE 原则:1.Scenario: 使用场景   非常简单,只有两个功能:   (1)长连接转换为短连接:String shortenURL(String longURL)   (2)短连接转化为长连接,能够访问目标网站: String getLongURL(String shortURL)2.Nece...
原创
发布博客 2018.06.22 ·
956 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏
加载更多