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

首页 / 操作系统 / Linux

C语言符号优先级

C语言符号优先级

一. 问题的引出今天看阿里的笔试题,看到一个非常有意思的题目,但是很容易出错。题目:如下函数,在32bit系统foo(2^31-3)的值是:Int foo(int x){return x&-x;}解答:如果想要答对这道题目,首先要清楚C语言中符号的优先级别,负号(-)的优先级高于^,所以2^31-3=2^28,还有一个陷阱就是C语言中认为^为异或运算而不是幂函数,所以2^28=30,然后计算30 & -30得出结果。又因为计算机内存中的数据...
Python实现支持JSON存储和解析的对象

Python实现支持JSON存储和解析的对象

我们知道利用JSON模块可方便的将Python基本类型(dict、list等)数据永久的存储成文件,同时也可以通过自定义转换函数和继承JSON encode&decode的方法实现自定义类的存储。本文就在前文“ Python JSON模块”的基础上,实现python支持JSON存储的对象。对象能够采取JSON存储和解析是有很大意义的。例如机器学习中所有分类算法的训练过程中都存在大量的数据计算,如果每次启动分类都需要重新训练分...
Python多线程之线程创建和终止

Python多线程之线程创建和终止

Python主要是通过thread和threading这两个模块来实现多线程支持。python的thread模块是比较底层的模块,python的threading模块是对thread做了一些封装,可以更加方便的被使用。但是python(cpython)由于GIL的存在无法使用threading充分利用CPU资源,如果想充分发挥多核CPU的计算能力需要使用multiprocessing模块(Windows下使用会有诸多问题)。如果在对线程应用有较高的要求时可...
Android开发实践:编译VLC For Android

Android开发实践:编译VLC For Android

最近在Android做流媒体相关的开发,一直想学习一下强大的VLC,正好趁此机会研究研究VLC For Android的代码,看看优秀的开源音视频播放器是如何实现的。本文总结下在Linux平台下如何编译VLC For Android。编译环境:Ubuntu 14.04 64bit,VLC版本2.1.5参考的文章:https://wiki.videolan.org/AndroidCompile/1. 准备编译环境基本上按照这篇wiki的介绍就足够了,为了顺利...
Android开发实践:使用Service还是Thread

Android开发实践:使用Service还是Thread

Service是Android的四大组件之一,被用来执行长时间的后台任务,同样,线程也可以实现在后台执行任务,它们的区别在哪呢?何时使用Service何时使用Thread呢?今天我也来说说我的理解和总结。首先,需要了解Service的几个特点。(1) 默认情况下,Service其实是运行在主线程中的,如果需要执行复杂耗时的操作,必须在Service中再创建一个Thread来执行任务。(2) Service的优先级高于后台挂起的Activity,当然,也高于...
Android开发实践:由new Handler()说开去

Android开发实践:由new Handler()说开去

最近面试一些Android开发的应聘者,除了基本的Activity生命周期等基础问题以外,我一般还会问如下两个问题:(1) Service与Thread有什么区别?(2) 在Activity里new Handler()和在自己创建的Thread中new Handler()有什么区别?第一个问题其实是一个伪命令,因为Service是Android四大组件之一,而Thread只是Java提供的一个封装了线程管理的工具类,无论是Activity还是Service...
Android开发实践:自定义带消息循环(Looper)的工作线程

Android开发实践:自定义带消息循环(Looper)的工作线程

上一篇文章提到了Android系统的UI线程是一种带消息循环(Looper)机制的线程(http://www.linuxidc.com/Linux/2014-12/110161.htm),同时Android也提供了封装有消息循环(Looper)的HandlerThread类,这种线程,可以绑定Handler()对象,并通过Handler的sendMessage()函数向线程发送消息,通过handleMessage()函数,处理线程接收到的消息。这么说比较抽...
Android开发实践:为什么要继承onMeasure()

Android开发实践:为什么要继承onMeasure()

Android开发中偶尔会用到自定义View,一般情况下,自定义View都需要继承View类的onMeasure方法,那么,为什么要继承onMeasure()函数呢?什么情况下要继承onMeasure()?系统默认的onMeasure()函数行为是怎样的 ?本文就探究探究这些问题。首先,我们写一个自定义View,直接调用系统默认的onMeasure函数,看看会是怎样的现象:package com.titcktick.customview;import an...
Android开发实践:自定义ViewGroup的onLayout()分析

Android开发实践:自定义ViewGroup的onLayout()分析

前一篇文章主要讲了自定义View为什么要重载onMeasure()方法(见 http://www.linuxidc.com/Linux/2014-12/110164.htm),那么,自定义ViewGroup又都有哪些方法需要重载或者实现呢 ?Android开发中,对于自定义View,分为两种,一种是自定义控件(继承View类),另一种是自定义布局容器(继承ViewGroup)。如果是自定义控件,则一般需要重载两个方法,一个是onMeasure(),用来测量...
99% 的新移动恶意程序是针对 Android

99% 的新移动恶意程序是针对 Android

安全公司 F-Secure的2014年Q1报告(PDF)显示,新发现的移动恶意程序绝大多数是针对Google的开源操作系统Android。这很大程度上是因为Android的市场统治地位,以及版本碎片化所导致的更新不一致和第三方应用市场的繁荣。Android上面并不是恶意程序泛滥成灾,安全研究人员只是发现了277种新的恶意程序家族,其中275种是针对Android,1种是iOS,还有1种是针对(前)诺基亚的Symbian。这些恶意程序主要是悄悄订阅增值号码,...
OAuth与OpenID登录工具曝出重大漏洞

OAuth与OpenID登录工具曝出重大漏洞

几周前,OpenSSL网站加密工具曝出的“Heartbleed”漏洞,已经将整个互联网安全领域震翻了一回。尽管绝大多数网站都在第一时间修复了它,但是一个新的问题又浮出了水面。一名安全研究人员发现了两款登录系统上的重大漏洞,而想要修复它们,却比Heartbleed要困难得多。给 Nginx 增加 OAuth 支持(nginx-lua) http://www.linuxidc.com/Linux/2014-01/94916.htmSpr...
<< 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 >>