Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

Java中线程安全问题个人理解

Java中线程安全问题个人理解

线程安全问题是一个比较高深的问题,是很多程序员比较难掌握的一个技术难点,如果一个程序员对线程掌握的很好的话,那么这个程序员的内功修炼的是相当的好。在这里我主要说一下我对java中如何保证线程安全的一些个人见解,希望对各位有所帮助,那里有不对的地方敬请给位不吝赐教。 线程安全问题主要出现在访问临界资源的时候,就是访问同一个对象的时候,可能会出现无法挽回的损失,特别是在关于资金安全方面的时候,当然还有数据库事务方面的问题。他们很类似,都是要保证数据的原子性。那...
对Java面向对象的的理解

对Java面向对象的的理解

对面向对象的理解可能每个人的理解程度不一样,这样就导致了写的程序的差别很大,写的质量上也回差别很大。<<Thinking In Java>>中说的好,Everything is object.每个事物都可以被看成对象,都可以被抽象成对象。怎么抽象对象呢?请记住一个原则,那就是:谁拥有数据,谁向外提供操作数据的方法。记住这个原则抽象对象就迎刃而解了。比如,你用手机打电话,是谁拨的电话呢?不明白面向对象编程的人会认为是“你”,但是用面向...
Java中传统的线程通信个人见解

Java中传统的线程通信个人见解

有一个使用共同数据的经验:要用到共同数据(包括同步锁)的若干方法,要放到同一个类里。体现了程序的高内聚,也增强了程序的健壮性。还有一个经验,把同步代码或在和锁放到共同使用的数据上,而不是放在线程内,这样的好处是什么呢:首先是更符合面向对象的思想。其次是这种设计结构非常容易实现线程的同步,并且增加线程访问共同数据的时候不用每次都在线程内增加同步代码。有利于扩展和维护。首先看一个例子,子线程先循环10次,主线程再循环100次,接着子线程循环10次,主线程再循环...
Java中多个线程访问共享数据的方式有哪些

Java中多个线程访问共享数据的方式有哪些

多个线程对共同数据的访问的实现,要根据情况而定(1)当访问共同的代码的时候:可以使用同一个Runnable对象,这个Runnable对象中有这个共享数据,比如卖票系统就可以这么做。或者这个共享数据封装在一个对象当中,然后对这个对象加锁,也可以实现数据安全访问。(2)当各个线程访问的代码不同时:这时候要使用不同的Runnable对象,有两种实现方式:a)将共享数据封装在另一个对象当中,然后将这个对象逐一的转递给各个Runnable对象。操作数据的方法也放进这...
Android应用程序下res文件夹的介绍

Android应用程序下res文件夹的介绍

res/drawable 专门存放png、jpg等图标文件。在代码中使用getResources().getDrawable(resourceId)获取该目录下的资源。res/layout 专门存放xml界面文件,xml界面文件和HTML文件一样,主要用于显示用户操作界面。res/values 专门存放应用使用到的各种类型数据。不同类型的数据存放在不同的文件中,如下:· strings.xml 定义字符串和数值,在Activity中使用getResourc...
Android中显示尺寸单位简介

Android中显示尺寸单位简介

px (pixels)像素 一般HVGA代表320x480像素,这个用的比较多。dip或dp (device independent pixels)设备独立像素 这个和设备硬件有关,一般为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。sp (scaled pixels — best for text size)比例像素 主要处理字体的大小,可以根据系统的字体自适应。除了上面三个显示单位,下面还有几个不太常用:in (inches)英寸mm...
Android基础知识:ActivityGroup和Activity的生命周期关系

Android基础知识:ActivityGroup和Activity的生命周期关系

今天写了一个Demo,来测试了一下ActivityGroup和Activity的生命周期。其实,Activity的生命周期已经没什么好说的了,这要是Android入了门的都应该知道。主要是ActivityGroup的生命周期以及ActivityGroup和Activity并存的时候生命周期的改变。ActivityGroup的生命周期的方法就onCreat()、onResume()、onPause()、onStop()、onDestroy()5个方法,运行顺...
jQuery解析JSON数据

jQuery解析JSON数据

JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成,而且它是基于JavaScript 的。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript 等)。这些特性使JSON成为理想的数据交换语言JSON有两种结构:①“名/值”对的集合(A collection of name/value p...
Android基础教程:禁止横屏竖屏切换

Android基础教程:禁止横屏竖屏切换

在Android中要让一个程序的界面始终保持一个方向,不随手机方向转动而变化的办法: 只要在AndroidManifest.xml里面配置一下就可以了。在AndroidManifest.xml的activity(需要禁止转向的activity)配置中加入android:screenOrientation=”landscape”属性即可(landscape是横向,portrait是纵向)。另外,android中每次屏幕方向切换时都会重启Activity,所以...
Android 2.2 下 Camera 应用程序支持 GPS 信息写入 jpeg 文件

Android 2.2 下 Camera 应用程序支持 GPS 信息写入 jpeg 文件

一、概述在Android2.2中,Camera的应用程序并不支持将GPS信息写入到JPEG文件中,但如果要实现这个功能,有如下两种方式:1、修改底层camera驱动。在拍照时,一般都是使用硬件去进行JPEG编码,这样就需要修改JPEG编码器,使其可以将GPS信息写入JPEG文件的头部,即EXIF部分。这种方式使用与手机驱动开发者。2、修改camera应用程序。Camera应用程序本身不支持该功能,但是android系统中提供了支持该功能的类—— ExifI...
Android Messenger 跨进程通信

Android Messenger 跨进程通信

Messenger:信使官方文档解释:它引用了一个Handler对象,以便others能够向它发送消息(使用mMessenger.send(Message msg)方法)。该类允许跨进程间基于Message的通信(即两个进程间可以通过Message进行通信),在服务端使用Handler创建一个Messenger,客户端持有这个Messenger就可以与服务端通信了。以前我们使用Handler+Message的方式进行通信,都是在同一个进程中,从线程持有一个...
自己动手写最简单的Android驱动---LED驱动的编写

自己动手写最简单的Android驱动---LED驱动的编写

开发平台:farsight s5pc100-a 内核:linux2.6.29环境搭配:有博文介绍开发环境:Ubuntu 、Eclipse首先强调一下要点:1.编写Android驱动时,首先先要完成linux驱动,因为android驱动其实是在linux驱动基础之上完成了HAL层(硬件抽象层),如果想要测试的话,自己也要编写java程序来测试你的驱动。2.android的根文件系统是eclair_2.1版本。我会上传做好的根文件系统提供大家。这里要说的是,a...
NDK编译出的apk文件安装到Android系统中的方法

NDK编译出的apk文件安装到Android系统中的方法

NDK编程思路1、使用NDK将c或c++文件编译成.so库文件2、使用eclipse编辑java文件,声明库函数,然后run as application,生成xx.apk文件,放在bin文件夹中3、chmod 文件apk的属性4、将.apk文件安装到Android开发板上下面主要讲讲如何安装apk文件网上的参考文档很多,但我都没实验成功,总是报出sdcard不存在,我的U盘是映射到udisk,根目录下也有sdcard,不知道什么原因,有知道的请告诉我1、...
<< 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 >>