Thuantanon
码龄10年
关注
提问 私信
  • 博客:95,046
    社区:164
    问答:31
    95,241
    总访问量
  • 13
    原创
  • 1,004,980
    排名
  • 10
    粉丝
  • 0
    铁粉

个人简介:路虽远,行则将至;事虽难,做则必成。

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
  • 加入CSDN时间: 2015-06-09
博客简介:

Thuantanon的博客

博客描述:
迷茫的本质,不在远方,在于当下。
查看详细资料
个人成就
  • 获得48次点赞
  • 内容获得26次评论
  • 获得57次收藏
  • 代码片获得167次分享
创作历程
  • 1篇
    2022年
  • 8篇
    2018年
  • 3篇
    2017年
  • 1篇
    2016年
成就勋章
TA的专栏
  • OpenGL ES2
  • 音视频技术
  • Android
    3篇
  • Java
    2篇
  • C/C++
    5篇
  • 算法与数据结构
    1篇
  • 心情和感悟
    1篇
创作活动更多

2024 博客之星年度评选报名已开启

博主的专属年度盛宴,一年仅有一次!MAC mini、大疆无人机、华为手表等精美奖品等你来拿!

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

volatile关键字理解

这里的“可见性”指的是,当对一个变量修改后,新值对于其他线程是立即可见的,注意这里的立即可见,并不是说其他线程能监听到变量值修改,而是说修改后的值能立即同步到主内存中(稍后介绍Java内存模型),保证其他线程能读取到的一定是最新值。什么是指令重排优化呢,Java源代码最终会编译成计算机能识别的机器码指令,为了提高执行效率,编译器和处理器可能会对指令进行优化重新排序,导致实际上指令执行的顺序可能会和源代码中想表达的顺序不一致。到此如果能轻松的理解上面两句话的,可以跳过本文。
原创
发布博客 2022.08.20 ·
1902 阅读 ·
2 点赞 ·
0 评论 ·
5 收藏

SharedPreferences源码分析

今天偶然看见一篇讲解SharedPreferences(以下简称SP)原理的文章,于是怀着前人种树后人乘凉的心情进去看了,发现写得不是很清楚,很多细节一笔带过,于是为了巩固一下基础就去百度了一下,发现百度上也没有让自己满意的文章。虽然SP说很简单,但是还是决定看看源码记录一下分析结果。此处分析的SDK版本为android-27。1.SP的使用我们都知道,SP是以XML文件方式存储的,我们先来看...
原创
发布博客 2018.10.11 ·
506 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

金山云直播Demo

发布资源 2018.05.07 ·
zip

Java中Object的finalize()方法

finalize()是什么?finalize()方法是Java中Object类的一个空实现方法,我们都知道,Java中所有的类都是继承自Object,那么就是说,所有的类都有这个方法。我们先来看看该方法/** * Called by the garbage collector on an object when garbage collection * dete
原创
发布博客 2018.04.11 ·
9654 阅读 ·
6 点赞 ·
0 评论 ·
6 收藏

一个简单的手势密码控件

GesturePasswordView最近项目需要做手势密码,于是呢顺手写了个,实现没有什么难度也没什么技术含量,只是贴出来以后不必重复造轮子,顺便也练习下写博客。项目地址https://github.com/Thuantanon/GesturePasswordView。使用方式1、工程gradle文件:allprojects { repositories { ... maven { u...
原创
发布博客 2018.03.13 ·
1321 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

error LNK2005:"XXX已经在 XXX.obj 中定义

今天第一次遇到多文件包含的问题,一般来说C++开发都是声明放在头文件里,实现放在源文件里,然后使用时包含头文件,头文件为了避免被重复编译,一般来说要加个杂注“#pragma once ”,或者直接用“#ifndef XXX ....#endif”来处理。好吧,这些我都知道,偏偏各种办法都用遍了,extern也加了,就是一直给我报下面那个错:折腾了半天,终于让我给折腾好了。
原创
发布博客 2018.02.27 ·
7563 阅读 ·
4 点赞 ·
0 评论 ·
6 收藏

C++两个平面矩形的相交判断

最近开发小游戏需要一个简单的碰撞检测,因为用的是自定义的Rect类,虽然这个判断方法很简单,但是百度看了很多人的写法代码量都相当的大。当然搜到的结果都不是我想要的,于是只有自己写啦。两个矩形(不考虑旋转)相交大概就那么几种情况,如下图:网上的算法要么就是判断顶点是否被包含,判断线段是否相交等等,这样做的不好的地方是要判断很多种情况。经过简单的分析我的方法如下图所示:
原创
发布博客 2018.02.08 ·
8370 阅读 ·
1 点赞 ·
4 评论 ·
9 收藏

使用SDL2_mixer遇到error LNK2019: 无法解析的外部符号

最近在学习C++和SDL,前不久写了个俄罗斯方块的小Demo,但是是没有声音的,接下来准备写一个消灭星星的小Demo,希望,可以加入声效,于是今晚下载了SDL处理音频的库http://www.libsdl.org/projects/SDL_mixer/,然后新建Win32控制台应用程序...(此处省略10字)头文件全部正确导入:库文件全部正确导入:
原创
发布博客 2018.01.25 ·
805 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

SDL俄罗斯方块

整天写一些Android的业务逻辑太心烦了,换个语言找点新鲜感。最近在学习C++,为了避免写黑框框太枯燥坚持不下去,顺便学习了下SDL,做了一个俄罗斯方块小Demo。我的C++也就是停留在大学时Hello world的 代码已上传Github,地址https://github.com/Thuantanon/Tetrics
原创
发布博客 2018.01.14 ·
1160 阅读 ·
4 点赞 ·
0 评论 ·
5 收藏

对大学四年的总结

去年,也就是2017,我顺利从一个普通二本的计算机学院毕业,这是一篇迟来的总结。
原创
发布博客 2018.01.02 ·
6094 阅读 ·
8 点赞 ·
6 评论 ·
4 收藏

读取访问权限冲突。0xCDCDCD

typedef struct List { List *next; // 表的下标 int i; // 总和结果 int sum;}List;已经一年多没有用C++了,最近厌倦了写一些垃圾App,想学一下游戏开发,于是开始复习下C。今天在复习数据结构的链表部分时,出现了这样的一个错误:折腾了半天,终于找到了原因:...
原创
发布博客 2017.12.20 ·
30892 阅读 ·
17 点赞 ·
12 评论 ·
22 收藏

Android使用CursorLoader加载手机联系人

1、Loader简介Loader是Android3.0(API版本11)中引入的一个抽象类,它主要是封装用来进行异步加载数据。Loader的直接子类是AsyncTaskLoader,也就是AsyncTask和Loader的一个封装类,关于AsyncTask这里就不举例了,总之就是异步加载数据,实际上和Thread+Hander+Loader都一样的效果。而CursorLoader是AsyncT
原创
发布博客 2017.11.23 ·
579 阅读 ·
1 点赞 ·
2 评论 ·
0 收藏

Navicat连接数据库Can't get hostname for your address 解决方法

我只是把自己遇到的问题分享出来,希望能解决大家的问题,特别是新手上路,很容易就因为一两个困难打击了学习的信心,编程是个耐心活儿,加油吧。
原创
发布博客 2017.10.31 ·
3423 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

Android动态权限判断以及动态权限申请

首先查看权限是否授予:官网代码// Assume thisActivity is the current activityint permissionCheck = ContextCompat.checkSelfPermission(thisActivity,int permissionCheck = ContextCompat.checkSelfPermission(this...
原创
发布博客 2016.12.23 ·
21183 阅读 ·
2 点赞 ·
2 评论 ·
13 收藏

java网络版五子棋

发布资源 2015.12.26 ·
rar

C语言版贪吃蛇

发布资源 2015.12.25 ·
rar
加载更多