首页 文章 精选 留言 我的

精选列表

搜索[源码阅读],共10005篇文章
优秀的个人博客,低调大师

PineNote:可运行 Linux 的电子墨水屏阅读器

Pine64(Pinebook Pro 和 PinePhone 背后的公司)宣布将推出 PineNote,一款基于 Quartz64 单板计算机的高端电子墨水屏设备。该公司表示,PineNote 是市场上最强大的电子墨水设备之一;可以作为 Remarkable 2 和 Onyx BOOX 等价格更高的同类型设备的开源替代品。 根据介绍,PineNote 采用了RK3566 四核 A55 系统芯片,搭配 4GB LPDDR4 内存和 128GB eMMC 闪存。还配备了两个麦克风和两个扬声器、一个用于快速充电和数据的 USB-C端口,以及 5Ghz AC WiFi;电子墨水面板则由防刮和减少眩光的硬化玻璃覆盖。整个组件的厚度堪堪超过 7 毫米,比 Kindle Oasis 3 薄了约 1 毫米。 作为该设备中最重要的部分,电子墨水屏的大小为 10.3 英寸、刷新率为 60Hz、分辨率为 1404×1872、可显示 16 级灰度。它拥有一个前灯,可调节冷(白色)到暖(琥珀色)光,从而达到减轻眼睛疲劳的目的。顶部有一个电容玻璃层(用于手指触摸输入)和一个 Wacom EMR(用于 EMR 笔输入)。 该公司表示,其将销售专为该设备设计的EMR 笔;有一个 LED 电源开/关指示灯、一个上一页/下一页按钮以及一个橡皮擦按钮。不过用户也可以不选择官方出售的笔,因为该设备兼容任何支持 Wacom 的 EMR 标准并被 Linux 内核支持的笔。 Pine64 计划在今年晚些时候以 399 美元的价格向早期尝鲜用户提供 PineNote,这一批次的 PineNote 将随附一个磁性外壳(与板载霍尔传感器配合使用,使设备进入睡眠状态)以及 EMR 笔。在尝鲜后,外壳和笔将分开销售。 详情可查看:https://www.pine64.org/2021/08/15/introducing-the-pinenote/

优秀的个人博客,低调大师

EventMesh v1.2.0 发布,新增 7 名 contributor(务必阅读!!!)

作者:薛炜明 这个版本是EventMesh进入apache孵化的首个版本,我非常荣幸能够担任本次EventMesh这个大版本的Release Manager。 在这个版本中,社区贡献者们完成了大量的优化和问题修复,极大地提高了应用的安全性、稳定性、可用性,上线版本的新功能特性以及修复优化,主要是以几个方面: 特性介绍 Connector&Adaptor 可插拔式对接多种事件存储、支持适配多种协议、适配多种Schema Binding 支持将事件与topic、schema绑定,提供事件的构建、转换、路由以及多种过滤模式 DistributedPrimitives EventMesh不仅支持云本地部署,还支持集群部署。对于分布式事件传递,eventmesh提供了两种消费模式,在集群模式下,一个事件只能传递给每组中的一个实例,而在广播模式下,每组中的每个实例都可以接收到每一个事件。 Scaling 基于云原生的弹性能力,EventMesh具有水平自动扩缩容的能力 Orchestration EventMesh可作为不同服务之间的协调器,支持对工作流进行编排。因此,如果工作流中出现故障,可以执行补偿操作从故障中恢复。 State Abstraction 支持对接稳定、可信和有状态的服务。订阅者通过EventMesh可以使用最适合这些订阅者性能需求的任何存储来重建源系统的状态:SQL/NoSQL、对象存储、基于文件的存储等。 EventMesh架构图 新增特性 支持RocketMQ 作为事件存储 支持Spi 进行插件化扩展实现以适应各种事件存储 支持Http模式发布/订阅,心跳管理和订阅信息维护 支持在docker容器下运行eventmesh 优化 优化eventmesh-connector-api中的接口设计 Tcp模式eventmesh异步化下发广播消息到客户端 将rocketmq插件配置从运行态eventmesh-runtime中拆分 清理遗留、易混淆的属性、概念 Openmessaging-api升级到 2.2.1-pubsub 版本 Bug修复 修复Tcp模式删除订阅会话失败 修复在 PullConsumer 消费主题中的消息后,ConsumerGroup队列偏移量未正确同步 修复解析 Long 时出现java.lang.NumberFormatException 解决EventMesh SDK 的 LiteConsumer HTTP 客户端中的竞态条件问题 解决Rocketmq 插件空指针异常 修复消费者拉取请求消息的属性“bizSeqNo”为空问题 修复多个监听实例,只有最后启动的实例能接收消息问题 修复EventMesh ProxyTcpRetryer抛出NumberFormatException问题 修复rocketmq-connector插件进行 tcp 推送时 throw操作超时异常 修复发送同步RR(request-response) msg失败异常 修复rocketmq-connector插件无法成功发送和接收msg异常 解决发布/订阅客户端无法启动问题 修复当onChange为NEW时,发生NullPointException问题 文档代码风格优化 修订包名,完善测试用例 补充eventmesh 项目必要的发布文件 补充eventmesh 模块下的每个源文件的许可证 代码结构和文件命名规范 提供docker中运行eventmesh详细指引 补充协议文档 本次 1.2.0 版本一共包含 Feature 4 个,Improvement 5 个,Bug Fix 13 个,文档和代码格式优化 6 个。据不完全统计,这些贡献来自近十多位 Eventmesh社区的 Contributor,感谢大家加入到Eventmesh社区共同打造动态的云原生事件基础设施。 新增贡献者 Eventmesh 1.2.0 的发布离不开 Eventmesh社区的贡献者,本次版本新增了以下几位contributor分别是: SteveYurongSu(清华大学)、liangyuanpeng(云兴科技)、ruanwenjun(ebay)、zhangxiaopengmm(csii)、sunxi92(民生银行)、yuzhoumao(密歇根大学)、jinrongluo 在这里非常感谢各位的积极参与和贡献,同时EventMesh社区非常期待有更多的用户、开发者、厂商参与到EventMesh生态的建设中来。 源项目地址: https://github.com/apache/incubator-eventmesh/tree/v1.2.0 预告 EventMesh v1.3.0版本社区内已经在如火如荼地讨论开发中了,v1.3.0版本将提供: 更广泛的事件存储集成(Kafka\Redis\...) CloudEvents事件标准协议集成 OpenTelementry集成,提升可观测性 OpenSchema集成,支持多种类型数据编解码(Avro\Protobuf\JSON\...) 支持协议插件化(Http/TCP/Grpc) 支持Acl与Registry插件化集成 提供Event Streaming实时的事件处理与计算 ... EventMesh社区欢迎更多的用户、开发者参与讨论共建。 交流群 添加项目负责人微信 ApacheEventMesh 进入社区群

优秀的个人博客,低调大师

阅读阿里巴巴Java开发手册的持续感悟中。。。。。。

1.尽量少用if......else超过三层的if......else 尽量采用卫语句替代,就是if(condition){....... return; } 对于多层循环的优化多采用短路做法,就是直接空了怎么办,然后没空就是执行, 2.对于在集合中删除元素也是常见的那么怎么处理效率会更高呐, Iterator<String> iterator=list.iterator(); while(iterator.hasNext()){ String item = iterator.next(); if(删除元素的条件){ iterator.remove(); } } 3.我又了解到了,为什么有了数组还要有集合呐,是这样的,数组是顺序结构,集合里有顺序结构也有链式结构选择时好选择, 4.Arrays.asList()把数组转变为集合时,不能使用其修改集合相关的方法,它的add/remove/clear会抛出异常 因为asList的返回对象是一个Arrays内部类,并没有实现集合的修改方法,其体现的是适配器模式,只是转换接口后台的 数据仍是数组 如String[] str = new String[]{"you","wu"}; List list = Arrays.asList(str); str[0] = "guiji";那么list.get(0)也会随之改变 持续更新中。。。。。。

优秀的个人博客,低调大师

第一行代码阅读笔记---AndroidMainfest.xml分析

按照这本书的指引,我随作者一样创建了一个安卓应用,开始了安卓开发的启程。 找到AndroidMainfest.xml这个文件,打开后看到了我创建的Activity在这个文件里被成功注册,文件内容如下: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.first_app" android:versionCode="1" android:versionName="1.0" android:installLocation="auto"> <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="18" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" //这个ic_launcher对应的就是drawable下的我们所存放的图片 android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.example.first_app.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest> 在这里,主要看<activity这个参数对应下面的内容,对此进行分析。 <activity /*注释*/ //对first_app Activity这个活动进行注册 //注意:没有在AndroidManifest.xml这个文件里注册的活动是不能被使用的。 android:name="com.example.first_app.MainActivity" android:label="@string/app_name" > <intent-filter> //以下这两行表示first_app Activity是这个项目的主活动,在手机上 //点击相应的应用图标,首先启动的就是这个活动 <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>以上的博文参考了第一行代码的作者郭霖的书籍而写下的读书笔记,版权归作者,本人仅作参考,学习。

优秀的个人博客,低调大师

iOS 系统分析(一) 阅读内核准备知识

原文出自【听云技术博客】:http://blog.tingyun.com/web/article/detail/1134 0x01 iOS体系架构 1.1 iOS 系统的整体体系架构 用户体验(The User Experience layer ):SpringBoard 同时支持 Spotlight。 应用软件开发框架(The Application Frameworks layer):Cocoa ( Cocoa Touch )。 核心开发框架(The Core Frameworks):图形和多媒体一类软件的开发环境,包括 核心框架,Open GL和QuickTime等。 Darwin:系统内核核心:包括内核和Unix Shell 环境。 1.2 Darwin体系 1.3 XNU概述 Darwin是一种类似unix的操作系统,他的核心是XNU。 XNU是一种混合式内核。结合了mach与BSD两种内核。 Mach 是微内核实现。 BSD 实现在Mach的上层,这一层提供的API 支持了POSIX标准模型。在XNU中主要实现了一些高级的API与模块。 1.3.1 Mach 微内核简介 在XNU中主要完成以下几个功能: 进程与线程的抽象 虚拟内存管理 任务调度 进程间通信 1.3.2 BSD 内核简介 BSD 实现在Mach的上层,这一层提供的API 支持了POSIX标准模型。在XNU中主要实现了一些高级的API与模块。 UNIX 进程模型; POSIX 线程模型即pthread,以及相关的同步功能; UNIX的用户与组管理; 网络协议栈(BSD Socket API),符合POSIX 模型; 文件系统/设备系统; 1.3.3 libKern 实现了一个C+ +的子集(以库的形式为支持C+ +提供了运行时),为I/O kit 提供基础设施; 1.3.4 I/O kit I/O kit 是XNU 不同于其他操作系统的设备驱动框架。IOKit是一个面向对象的驱动模型框架,它是早期DriverKit的一个翻版,Driver Kit是使用Objective-C写的,而IOKit是一个C+ +的驱动架构,它在DriverKit的基础上做了很大的改进,比如IOKit可以写在用户空间跑的驱动(虽然大多仍是跑在内核空间上的),因而驱动挂了而系统不会挂。另外IOKit考虑到了计算机发展的趋势,所以在电源管理、即插即用、动态加载上做得更好。 0x02 iOS安全机制 2.1 代码签名 在iOS开发者使用的机器上应该已经有一个证书,一个公钥,以及一个私钥。这些事代码签名机制的核心。像SSL一样,代码签名也依赖于采用X.509 标准的公开密钥加密体系。无论是用户还是开发者都不能改变应用开启策略,你必须有一个开发者帐号或者应用发布证书才能让应用运行在 iOS 系统上。 2.2(强制访问控制(Mandatory Access Control) iOS的entitlement 机制的基础。简称MAC,用于将系统中的信息分密级和类进行管理,以保证每个用户只能访问那些被标明可以由他访问的信息的一种访问约束机制。通俗的说,在MAC下,用户与文件都被标记了固定的安全属性(如安全级别,访问权限等),在每次访问发生时,系统检测安全属性以便确定一个用户是否有权访问该文件)。 2.3 沙盒机制(sandbox) 沙盒是一种安全机制,为运行中的程序提供隔离环境。沙盒在启动的时候可以设置运行的程序是否可以访问网络、文件、目录等。 参考 《深入解析Mac OS X & iOS操作系统》

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册