自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (1)
  • 问答 (3)
  • 收藏
  • 关注

翻译 01-Tkinter教程-窗口的管理与设置

官方用的GUI工具包——Tkinter(IDLE就是用这个开发的)。Tkinter是Python的标准GUI库,它实际是建立在Tk技术上的。在大多数Unix平台以及Windows系统上都可用。作为 python 特定的GUI界面,是一个图像的窗口,tkinter是python 自带的,可以编辑的GUI界面,我们可以用GUI 实现很多直观的功能,比如想开发一个计算器,如果只是一个键盘输入,输出的黑色窗口,是没用用户体验的。所有开发一个图像化的小窗口,就是必要的。对于稍有GUI编程经验的人来说,Py

2021-06-29 17:39:32 688

翻译 canvas绘制动画的技巧

我们拿下图中的沿着线段轨迹移动的原点来举例,怎么来实现这个动画!1)定义路径集合Path,里面规定关键坐标点如startPoint和endPoint,设置从startPoint移动到endPoint的时间duration。如下json对象,我们有6段路径,分别进行了定义。我们将下面这个列表集合命名为path。 1 [ 2 { 3 "startPoint": { 4 "x": 252.86249999999995, 5

2021-06-29 17:36:47 572

翻译 Java基准性能测试--JMH使用介绍

JMH是什么JMH是Java Microbenchmark Harness的简称,一个针对Java做基准测试的工具,是由开发JVM的那群人开发的。想准确的对一段代码做基准性能测试并不容易,因为JVM层面在编译期、运行时对代码做很多优化,但是当代码块处于整个系统中运行时这些优化并不一定会生效,从而产生错误的基准测试结果,而这个问题就是JMH要解决的。JMH vs JMeterJMeter可能是最常用的性能测试工具。它既支持图形界面,也支持命令行,属于黑盒测试的范畴,对非开发人员比较友好,上手也非常

2021-06-29 17:34:53 637

翻译 noip模拟10[入阵曲·将军令·星空](luogu)

对于这次考试来说,总体考得还是不错的就是有一个小问题,特判一定要判对,要不然和不判一样,甚至错了还会挂掉30分还有一个就是时间分配问题,总是在前几个题上浪费太多时间,导致最后一个题完全没有时间思考所以最后一个题我又成功的爆零了下次冲第一,把分拿满当然最重要的还是关于这个考场上是想正解还是暴力的问题我现在有了一个大概的思路,就是不要浪费太多时间去想,一般保持在一个小时以内是可以的当然这是在前10分钟已经把暴力思路弄出来的情况下(暴力程序可以先不着急打)那下面就是正解时刻了

2021-06-29 17:30:57 122

翻译 SpringBoot2 参数管理实践,入参出参与校验

一、参数管理在编程系统中,为了能写出良好的代码,会根据是各种设计模式、原则、约束等去规范代码,从而提高代码的可读性、复用性、可修改,实际上个人觉得,如果写出的代码很好,即别人修改也无法破坏原作者的思路和封装,这应该是非常高水准。但是在日常开发中,碍于很多客观因素,很少有时间去不断思考和优化代码,所以只能从实际情况的角度去思考如何构建系统代码,保证以后自己还能读懂自己的代码,在自己的几年编程中,实际会考虑如下几个方面:代码层级管理,命名和注释统一,合理的设计业务数据库,明确参数风格。这里就来聊一下

2021-06-29 17:26:45 317

翻译 在 NUC980 上运行 RT-Thread

nuc980是新塘推出的基于 ARM926EJ-S,集成 64 MB 或 128 MB DDR-II 的处理器,主频可以达到300MHZ,有 64-pin、128-pin 和 216-pin LQFP 封装,主要应用为工业自动化控制、工业物联网闸道器 ( Gateway ) 、网路印表机设备、电表集中器、智能家居闸道。(2) RT-ThreadRT-Thread 是一个国产的 RTOS ,详细信息查看RT-Thread 官网开发环境Win10 编译器:GCC,这里使用 RT-Thread

2021-06-29 17:24:59 935

翻译 深入解读Redis分布式锁

之前码甲哥写了两篇有关线程安全的文章:你管这叫线程安全? .NET八股文:线程同步技术解读分布式锁是"线程同步"的延续最近首度应用"分布式锁",现在想想,分布式锁不是孤立的技能点,这其实就是跨主机的线程同步。进程内 跨进程 跨主机 Lock/Monitor、SemaphoreSlim Metux、Semaphore 分布式锁 用户态线程安全 内核态线程安全 单机服务器可以通过共享某堆内存来标记上锁/解锁,线程同步说到底是建立在单机操作系统.

2021-06-16 15:47:47 120

翻译 Java8 中使用Stream 让List 转 Map使用总结

在使用 Java 的新特性 Collectors.toMap() 将 List 转换为 Map 时存在一些不容易发现的问题,这里总结一下备查。空指针风险java.lang.NullPointerException当 List 中有 null 值的时候,使用 Collectors.toMap() 转为 Map 时,会报 java.lang.NullPointerException,如下:List<SdsTest> sdsTests = new ArrayList<&

2021-06-16 15:42:23 528

翻译 【九】Kubernetes 之 Service 概念图文讲解及功能演示

Kubernetes Service 定义了这样一种抽象:逻辑上的一组 Pod,一种可以访问它们的策略 —— 通常称为微服务。Service 通常是通过Label Selector,也就是 Service 通过标签选择的方式匹配一组 Pod 对外提供访问的机制。解释上图具体实现过程:首先、定义一个Nginx Deployment由它创建三个Pod,每个 Pod 中都有对应的标签mynginx。第二、定义一个Nginx Service,标签为mynginx,Service 会根据自己的..

2021-06-16 15:38:22 156

翻译 2021-06-16

通过DTLS 协商后,RTC 通信的双方完成MasterKey和MasterSalt的协商。接下来,我们继续分析在 WebRTC 中,如何使用交换的密钥,来对 RTP 和 RTCP 进行加密,实现数据的安全传输。同时,本文会对 libsrtp 使用中,遇到的问题的进行解答,例如,什么是 ROC,ROC 为什么是 32-bits?为什么会返回 error_code=9, error_code=10?交换的密钥有生命周期吗,如果有是多长时间呢?阅读本篇之前建议阅读DTLS 协商篇,两者结合,效果更...

2021-06-16 15:36:13 931

翻译 浅谈Gson和fastjson使用中的坑

相信大家在代码编写中都用过Gson和fastjson吧,用来进行 Java对象和json字符串之间的转换。本篇文章就主要介绍博主在工作中使用这两款工具时遇到的坑和对应的解决办法。觉得有用的可以点个赞哈~1.前言看了下我上一篇文章的发布时间,已然是两个月前了,这两个月工作确实很忙,加班也不少,空闲的时间都去研究别的技术了(后面会写文章),这次先用此篇文章记录我这段时间工作中遇到的坑,其实写文章的主要目的也是想记录一下问题,便于帮助他人也便于自己以后查看,废话不多说,开始说明问题~2.G.

2021-06-09 17:34:22 322

翻译 一文教会你认识Vuex状态机

一. 速识概念:1.组件之间共享数据的方式:通常有以下几种方式:父向子传值:v-bind属性绑定; 子向父传值:v-on事件绑定; 兄弟组件之间共享数据:EventBus;2. vuex是什么:按照官方的话来说,Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。Vuex 也集成到 Vue 的官方调试工具 devtools extension (opens new window...

2021-06-09 17:31:13 591

翻译 【译】.NET 5 中的诊断改进

  基于我们在 .NET Core 3.0 中引入的诊断改进,我们一直在努力进一步改进这个领域。我很高兴介绍下一波诊断改进。诊断工具不再需要 .NET SDK  直到最近,.NET 诊断工具套件还只能作为 .NET SDK 全局工具使用。虽然这为获取和更新工具提供了一种方便的方式,但这意味着在没有完整 SDK 的环境中很难获得它们。我们现在提供了一个单文件分发机制,它只需要在目标机器上提供一个运行时(3.1+)。  工具的最新版本总是可以通过以下模式的链接获得:  https://aka.m

2021-06-09 17:26:38 61

翻译 实用的jar包加密方案

前言jar包相信大家都很熟悉,是通过打包java工程而获得的产物,但是jar包是有一个致命的缺点的,那就是很容易被反编译,只需要使用jd-gui就可以很容易的获取到java源码。如果你想要防止别人反编译做逆向工程,那么对jar包进行一次加密就是一项很重要的工作了。如何对jar包进行加密呢?其实没有想象中的那么困难,有一款开源工具已经提供了较为完善的加密方案,这款开源工具的名字叫做xjar。接下来我们就看一下使用xjar工具给jar包加密有多么的容易。基础环境准备现在假设你的项目是一个

2021-06-09 17:25:14 1257

翻译 MapReduce——客户端提交任务源码分析

MR程序并不会在客户端执行任何的计算操作,它是为计算工作做好准备,例如计算出切片信息,直接影响到Map任务的并行度。在Driver中提交任务时,会写到这样的语句: boolean result = job.waitForCompletion(true);进入到waitForCompletion中:public boolean waitForCompletion(boolean verbose) throws IOException, InterruptedException,Cla

2021-06-09 17:12:30 152

翻译 CountDownLatch原理详解

CountDownLatch是一种同步辅助,让我们多个线程执行任务时,需要等待线程执行完成后,才能执行下面的语句,之前线程操作时是使用Thread.join方法进行等待,CountDownLatch内部使用了AQS锁,前面已经讲述过AQS的内部结构,其实内部有一个state字段,通过该字段来控制锁的操作,CountDownLatch是如何控制多个线程执行都执行结束?其实CountDownLatch内部是将state作为计数器来使用,比如我们初始化时,state计数器为3,同时开启三个线程当有一个线程执行成功

2021-06-09 17:09:55 553

翻译 the rust book 的简单入门笔记

学了常量,变量,数据类型,控制流,所有权char的宽度是4字节,一个 unicode 的宽度 控制流条件都不要括号 rust 中的元组使用和 c++ 中的非常相似 // clang++ test.cpp -std=c++11 && ./a.out#include <iostream>#include <string>#include <tuple>int main() {std::tuple<int, std::string.

2021-06-09 17:08:49 643

CODE_OF_CONDUCT.md

CODE_OF_CONDUCT.md

2021-06-10

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除