• 5点赞

    高并发Java(8):NIO和AIO

    IO感觉上和多线程并没有多大关系,但是NIO改变了线程在应用层面使用的方式,也解决了一些实际的困难。而AIO是异步IO和前面的系列也有点关系。在此,为了学习和记录,也写一篇文章来介绍NIO和AIO。 1. 什么是NIO NIO是New I/O的简称,与旧式...
    mortensen mortensen 发表于 9小时前
  • 0点赞

    高并发Java(7):并发设计模式

    1. 什么是设计模式 在软件工程中,设计模式(design pattern)是对软件设计中普遍存在(反复出现)的各种问题 ,所提出的解决方案。这个术语是由埃里希·伽玛(Erich Gamma)等人在1990年代从建筑设计领 域引入到计算机科学的。 著名的4...
    mortensen mortensen 发表于 9小时前
  • 5点赞

    高并发Java(6):JDK并发包2

    1. 线程池的基本使用 1.1.为什么需要线程池 平时的业务中,如果要使用多线程,那么我们会在业务开始前创建线程,业务结束后,销毁线程。但是对于业务来说,线程的创建和销毁是与业务本身无关的,只关心线程所执行的任务。因此希望把尽可能多的cpu用在执行任务上面...
    mortensen mortensen 发表于 9小时前
  • 0点赞

    高并发Java(5):JDK并发包1

    在高并发Java(2):多线程基础中,我们已经初步提到了基本的线程同步操作。这次要提到的是在并发包中的同步控制工具。 1. 各种同步控制工具的使用 1.1 ReentrantLock ReentrantLock感觉上是synchronized的增强版,sy...
    mortensen mortensen 发表于 9小时前
  • 8点赞

    高并发Java(4):无锁

    在高并发Java(1):前言中已经提到了无锁的概念,由于在jdk源码中有大量的无锁应用,所以在这里介绍下无锁。 1 无锁类的原理详解 1.1 CAS CAS算法的过程是这样:它包含3个参数CAS(V,E,N)。V表示要更新的变量,E表示预期值,N表示新值。...
    mortensen mortensen 发表于 9小时前
  • 7点赞

    Spring MVC REST异常处理最佳实践(下)

    在本系列文章的第一部分里,我们讨论了异常发生时,该返回给 REST API 调用者的异常表示(格式)的最佳实践。 在本文(第二部分)中,我们将展示如何在使用 Spring MVC 编写的 REST API 中产生那些异常表述信息。 Spring 异常处理 ...
    Pavel-Repin Pavel-Repin 发表于 9小时前
  • 6点赞

    Spring MVC REST异常处理最佳实践(上)

    如果你已经使用 Spring 来构建你的应用,并且你需要提供 REST API, 那么 Spring MVC 会是你编写 REST 端一个很好的选择。 然而,由于 Spring MVC 常被用来构建用户接口,因此通过 RESTful 方式来清楚表示异常或问...
    Pavel-Repin Pavel-Repin 发表于 9小时前
  • 3点赞

    Fastlane自动化构建工具(完整解决测试和发布流程)

    Fastlane自动化构建工具(完整解决测试和发布流程) fastlane 控制整体流程和实现的框架容器 支持平台:iOS、Android 官方地址:https://github.com/fastlane/fastlane fastlane流程 fastl...
    carter carter 发表于 13小时前
  • 4点赞

    为什么要做微服务

    在当今世界, 人们几乎不可能脱离他人的服务, 一切自给自足地生活. 回想一下, 我们在超市购物, 在餐饮吃饭, 在公司上班, 解决客户的问题, 这些时候, 我们都在接受别人的服务, 同时也在为别人提供服务. 服务 Service 是什么? 简单来说, 服务...
    sdellysse sdellysse 发表于 13小时前
  • 5点赞

    深入研究Block捕获外部变量和__block实现原理

    前言 Blocks是C语言的扩充功能,而Apple 在OS X Snow Leopard 和 iOS 4中引入了这个新功能“Blocks”。从那开始,Block就出现在iOS和Mac系统各个API中,并被大家广泛使用。一句话来形容Blocks,带有自动变量...
    mortensen mortensen 发表于 13小时前
  • 7点赞

    用java做一个最小的操作系统内核2

    (系列视频实战可观看网易云课堂: Linux kernel Hacker, 从零构建自己的内核 ) 上一节,我用java制作了一个虚拟软盘,当把软盘插入虚拟机,启动机器后,屏幕打印出java程序中设定的语句,然后卡死。 在java代码中,有一个二进制数组,...
    Utkash-Bhatt Utkash-Bhatt 发表于 13小时前
  • 5点赞

    用java做一个最小的操作系统内核

    (系列视频实战可观看网易云课堂: Linux kernel Hacker, 从零构建自己的内核 ) 用java来做操作系统内核,太搞笑了吧。如果你这么想,同时嘴上发出呵呵一笑。那么我这篇文章的目的也算达到了,评判一篇文章好坏,不就在于它是否能让读者感觉到精...
    Utkash-Bhatt Utkash-Bhatt 发表于 13小时前
  • 6点赞

    聘请移动应用开发者的10个技巧

    想出了一个app创意?想要实现这个创意并赚到钱?是的,看到数字市场的巨大需求和范围,谁不想从app创意上赚到钱?显然,当给定app的形式时,没有多少app的创意是成功的。为了避免app中出现缺陷,最好的解决办法是聘请移动应用开发者,因为他们有经验,有才能,...
    Utkash-Bhatt Utkash-Bhatt 发表于 昨天
  • 9点赞

    iOS开发中深入理解CADisplayLink和NSTimer

    一、什么是CADisplayLink 简单地说,它就是一个定时器,每隔几毫秒刷新一次屏幕。 CADisplayLink是一个能让我们以和屏幕刷新率相同的频率将内容画到屏幕上的定时器。我们在应用中创建一个新的?CADisplayLink?对象,把它添加到一个...
    Tsvetomir-Tsonev Tsvetomir-Tsonev 发表于 昨天
  • 8点赞

    JavaScript 中 this 的使用技巧总结

    tip 首先,我知道这篇文章很无聊,无非就是关于 js 中的 this,并且也已经有千千万万的文章写过这部分内容了; 但是,我还是想写一篇关于 js 中的 this 的文章,算是一个总结归纳吧;(大神们可以绕行看我的其他文章) 在 js 中,this 这个...
    Chris Chris 发表于 昨天
  • 2点赞

    3D游戏常用技巧Normal Mapping (法线贴图)原理解析——高级篇

    1、概述 上一篇博客,3D游戏常用技巧Normal Mapping (法线贴图)原理解析——基础篇,讲了法线贴图的基本概念和使用方法。而法线贴图和一般的纹理贴图一样,都需要进行压缩,也需要生成mipmap。但是由于法线贴图存储的是法线信息,压缩和生成mip...
    ecarrizo ecarrizo 发表于 昨天
  • 9点赞

    3D游戏常用技巧Normal Mapping (法线贴图)原理解析——基础篇

    1、法线贴图基本概念 在制作3D游戏时,常常遇到这样一个问题:一个平面,这个平面在现实中并不是一 个“平”面,例如砖墙的表面带有石质浮雕等等。这种情况下如果只是简单的做一个平面,则让人感觉严重失真,如图1所示;而如果用很密集的三角形去表示这类略有凹凸的表面...
    ecarrizo ecarrizo 发表于 昨天
  • 1点赞

    Postgres-XL9.5简介与集群部署

    一 Postgres-XL简介 Postgres的-XL是一个基于PostgreSQL数据库的横向扩展开源SQL数据库集群,具有足够的灵活性来处理不同的数据库工作负载: 完全ACID,保持事务一致性 OLTP 写频繁的业务 需要MPP并行性商业智能/大数据...
    assylias assylias 发表于 昨天
  • 1点赞

    HashMap的实现与优化

    HashMap的优化与实践 本文是基于作者在github上的Android 问题交流讨论坛提问而产生的一篇文章,也是自己早打算开坑的一篇文章。文章首先介绍了hashMap的一些基本知识,然后介绍了它在JDK8下的实现原理,最后着重介绍了几个面试中处理大数据...
    Johnny Maelstrom Johnny Maelstrom 发表于 昨天
  • 7点赞

    队列的顺序实现与链式实现

    队列的定义 与栈相反,队列(queue)是一种**先进先出**(first in first out,缩写为FIFO)的线性表。这和我们日常生活中的排队是一致的,最早进入队列的元素最早离开。在队列中,允许插入的一端叫做**队尾**(rear),允许删除的一...
    user42155 user42155 发表于 昨天