adobe flash player怎么修复
1.首先检查您是否有安装,下载和安装而无需安装。2。启动菜单/控制面板/Flash Player/Update/立即更新。按OK.3。另一种方法是使用腾讯计算机管理器维修。打开管家后,在计算机诊所找到Flash的Flash版本,然后立即单击。
如何跨进程调用surfaceflinger的方法
Android SurfaceFlinger 详解 1. SurfaceFlinger 按英文翻译过来就 Surface 投递者。 就是把上层所画的各个 surface 进行处 理然后传给底层硬件来显示的一个功能。 2. 下图比较详细的阐述了 SurfaceFlinger 所起的作用。 Android 图形系统中一个重要的概念和线索是 surface。View 及其子类(如 TextView, Button) 要画在 surface 上。 每个 surface 创建一个 Canvas 对象 (但 属性时常改变),用来管理 view 在 surface 上的绘图操作,如画点画线。每个 canvas 对象对应一个 bitmap,存储画在 surface 上的内容。 每个 Surface 通常对应两个 buffer,一个 front buffer, 一个 back buffer。 其中,back buffer 就是 canvas 绘图时对应的 bitmap。因此,绘画总是在 back buffer 上,需要更新时,则将 back buffer 和 front buffer 互换。 The window is tied to a Surface and the ViewRoot asks the Surface for a Canvas that is then used by the Views to draw onto. After View draw its data to canvas, ViewRoot will call surface.unlockCanvasAndPost(canvas) to schedule surfaceFlinger::composeSurfaces() which do the actually display to display panel. SurfaceFlinger handles to transfers drawn data in canvas to surface front buffer or backbuffer Except for SurfaceViews, different views within the same ViewRoot share the same surface. Layer 的概念: 每个 surface 又对应一个 layer, SurfaceFlinger 负责将各个 layer 的 front buffer 合成(composite)绘制到屏幕上。 A Layer is something that can be composited by SurfaceFlinger (should have been called LayerFlinger). There are several types of Layers if you look in the code, in particular the regular ones (Layer.cpp) , they are backed by a Surface, and the LayerBuffer (very badly chosen name) which don’t have a backing store, but receive one from their client. . Note that the GGLSurface type, should have been called GGLBuffer Multiple layers are just composited to the final buffer in their Z order. 有几个对象与 Surface 概念紧密相关: 1. Java Surface (frameworks/base/core/java/android/view/Surface.java) 。 该对象被应用间接调用(通过 SurfaceView, ViewRoot 等), 应用需要创建 surface,(并同时创建 canvas), 将图形绘制到这个对象上并最终投递到屏幕 上。 2. C++ Surface (frameworks/base/libs/ui/Surface.cpp。 这个对象被 Java Surface 通过 Jni 调用,实现 Java Surface 的功能 3. ISurface (以及其派生类 BnSurface)。这个对象是应用和 server 之间的接 口。 C++ Surface 创建这个 ISurface (BnSurface) 并发送命令, 如更新 surface 内容到屏幕上。Server 端接受这个命令并执行相应操作。 研究一个 surface 如何创建的关键路径如下: 1. frameworks/base/core/java/android/view/Surface.java Surface::Surface () -- 2. frameworks/base/core/jni/android_view_Surface.cpp -- Surface_init ()。 在这个函数中 SurfaceComposerClient 对象被创建。 3.frameworks/base/libs/ui/SurfaceComposerClient.cpp SurfaceComposerClient::SurfaceComposerClient (). 这个函数非常重要,在这里建立了 client 和 server 之间的桥梁。通过函数 _get_surface_manager() 获 得 了 一 个 指 向 server 的 IBinder 对 象 ( 具 有 ISurfaceComposer 接口),之后通过这个 IBinder 就可以跨进程访问 Server 的 功能。接着调用 ISurfaceComposer::createConnection()创建并返回了一个 ISurfaceFlingerClient 的 IBinder。 4. frameworks/base/libs/ui/SurfaceComposerClient.cpp -SurfaceComposerClient::createSurface(). 这 个 函 数 中 , 利 用 前 面 获 得 的 ISurfaceFlingerClient 的 IBinder,调用其 createSurface 接口。 5.frameworks/base/libs/surfaceflinger/SurfaceFlinger.cpp -BClient::createSurface ()。BClient 由 ISurfaceFlingerClient 派生而来。 6. frameworks/base/libs/surfaceflinger/SurfaceFlinger.cpp -SurfaceFlinger:: createSurface()。这个函数为 Surface 创建一个对应的 Layer。 上述关键路径中,1,2,3,4 运行于 client 进程中,而 5,6 运行与 server 进 程中。server 作为一个 service 提供给 client 访问。 与图形相关的代码主要位于下列目录: 1、frameworks/base/graphics/java/android/graphics 2、frameworks/base/core/java/android/view 3、frameworks/base/core/java/android/widget 4、frameworks/base/opengl/ 5、frameworks/base/libs/ui 6、frameworks/base/libs/surfaceflinger 7、frameworks/base/core/jni/android/graphics 8、frameworks/base/core/jni/android/opengl 9、frameworks/base/core/jni/android/android_view_*.cpp 10、external/skia 一、下列目录中的部分代码: 1、frameworks/base/graphics/java/android/graphics 2、frameworks/base/core/java/android/view 3、frameworks/base/core/java/android/widget android.graphics, android.view 和 android.widget 功能和其他类似的图形库 如 Qt/Gtk+差不多, 分别提供基本的图形原语 (如画点画线, 设置图形上下文等) , 事件机制, 以及开发图形用户界面的控件等。 canvas 用于开发 2D 图形, Surface 代表一个可供图形系统绘制的 surface。可在其上绘制 2D 活 3D 图形。
什么是“数据存储结构”
数据结构是一个二进制组,记录为:data_struction =(d,s)。其中,D是数据元素的集合,S是关于D的关系的集合。数据元素之间的关系称为结构。根据数据元素之间关系的不同特征,以下四个基本结构:(1)集合:数据元素之间的关系是相同的集合。(2)线性结构:数据元素之间存在一个 - 一个关系。(3)树结构:结构中的元素之间的关系是一个-to----许多关系。(4)图(net)类似结构:结构中的元素之间的关系更多地与关系。-flash play