首页 文章 精选 留言 我的

精选列表

搜索[依赖更新],共10000篇文章
优秀的个人博客,低调大师

PostgreSQL 动态更新 C 语言函数

PostgreSQL 对于 C 语言编写的函数(包括其他与 C 语言兼容的语言,如 C++、Rust 等),是动态装载的,用 CREATE FUNCTION 创建完函数后,并不会立即装载,而是有连接建立之后,客户端第一次调用时才会进行装载,而且是装入到会话进程的内存里面去了。这时候,就算我们把 .so 文件删除,如果会话之前已调过一次函数的话,客户端还是可以继续调用函数的。 如果我们改写了函数代码,重新生成了 .so 文件,把新的 .so 文件覆盖老版本的 .so 文件,这时候在已有的会话里调用函数的话,有时候会报函数版本错误“ERROR unrecognized function API version, sql status: XX000”;有时候更严重,会导致当前会话的进程 Segment Fault,导致整个 PostgreSQL 崩溃而重启。这时候就算用 CREATE OR REPLACE FUNCTION 来重新装载函数也不行,也会导致 PostgreSQL 重启。 唯一可行的解决方案就是把 .so 文件版本化,每个编译出来的 .so 文件加上版本号,每个版本的文件都不同,把新版本的文件拷到 PKGLIBDIR 下,再用 CREATE OR REPLACE FUNCTION 替换掉老版本的函数,这样就算在已建立的会话里调用时,也是调的新版本的函数了。老版本的 .so 文件也可以删除了。

优秀的个人博客,低调大师

python开源工具列表【持续更新】

以下是个人在工作中整理的一些python wheel,供参考。这个列表包含与网页抓取和数据处理的Python库 网络 通用urllib-网络库(stdlib)。requests-网络库。grab–网络库(基于pycurl)。pycurl–网络库(绑定libcurl)。urllib3–Python HTTP库,安全连接池、支持文件post、可用性高。httplib2–网络库。RoboBrowser–一个简单的、极具Python风格的Python库,无需独立的浏览器即可浏览网页。MechanicalSoup-一个与网站自动交互Python库。mechanize-有状态、可编程的Web浏览库。socket–底层网络接口(stdlib)。Unirest for Python–Unirest是一套可用于多种语

优秀的个人博客,低调大师

JAVA库函数总结【持续更新】

生成随机数: Math.random()是令系统随机选取大于等于 0.0 且小于 1.0 的伪随机 double 值. Random rand = newRandom(); rand.nextInt(int s);//生成0~s内的整数 int randNumber =rand.nextInt(MAX - MIN + 1) + MIN;//生成指定范围的整数 关于web服务获取服务器ip、hostname: 1. string ip = Request.ServerVariables["Remote_Addr"]; string ip = Request.UserHostAddress; 2. InetAddress addr = InetAddress.getLocalHost(); ip=addr.getHostAddress().toString;//获得本机IP address=addr.getHostName()toString;//获得本机名称

优秀的个人博客,低调大师

docker常用的命令(持续更新)

测试环境 ubuntu16.04 1.你本地有多少docker镜像捏? sudo docker images 2. 你现在运行了哪些docker容器? sudo docker ps 3. 开启上帝模式,管理你的docker 我们运行docker images和docker ps命令后,返回的结果里面都包含一个CONTAINER ID,这一个是docker容器(镜像)×××,通过它我们可以对docker容器进行开启、关闭等操作 sudo docker run -it $(YOUR_CONTAINER_ID) docker run: 在容器里面运行命令 -i: 交互式操作 -t: 分配一个tty $(YOUR_CONTAINER_ID): 你的容器ID 4. 关闭docker sudo docker stop ${YOUR_CONTAINER_ID} 本文转自 qq414207614 51CTO博客,原文链接:http://blog.51cto.com/skytina/2051007,如需转载请自行联系原作者

优秀的个人博客,低调大师

更新交换路由IOS的

1、要确保电脑与路由或者交换机可以ping通 2、打开cisco Tftp Server,在菜单中单击“view”→“Options“,找出放IOS文件的路径 3、上传或下载路由器的IOS或配置文件 下载:copy flash tftp 上传:copy tftp flash 下载路由或者交换机的配置文件,做个备份,以免配置错误的恢复 copy nvram:startup-config tftp 上传配置文件到路由或者交换机 copy tftp:startup-config nvram 本文转自wiliiwin 51CTO博客,原文链接:http://blog.51cto.com/wiliiwin/199257

优秀的个人博客,低调大师

Android -- 触摸Area对焦区域(更新)

老早就想找关于不同点击不同地方的对焦,但是一直没有找到,现在项目又需要这个功能,又跑出来找找,最后还是找到啦~~关于对焦更多的是关于自动对焦。 废话不多说,直接来干货,主要是setFocusAreas方式实现的。 每个对角区域是一个具有特定权值的长方形。方向与重力感应的方向有关。这个方向不会受到setDisplayOrientation(int)设置的影响。矩形的坐标范围从-1000到1000 ,(-1000,-1000)是左上角点(1000,1000)是右下角点。对焦区域的长或宽不能为0或负数,而权值的取值范围是1-1000,权值为矩形范围像素所平分,这意味着同样的权值对焦区域大的对整体的对焦影响小。 Code private Rect calculateTapArea(float x, float y, float coefficient) { float focusAreaSize = 200; int areaSize = Float.valueOf(focusAreaSize * coefficient).intValue(); Log.i("calculateTapArea", "areaSize--->" + areaSize);//300 Log.i("calculateTapArea", "x--->" + x + ",,,y--->" + y);//对的 int centerX = (int) ((x / getResolution().width) * 2000 - 1000); int centerY = (int) ((y / getResolution().height) * 2000 - 1000); Log.i("calculateTapArea", "getResolution().width--->" + getResolution().width + ",,,,getResolution().height--->" + getResolution().height); int left = clamp(centerX - (areaSize / 2), -1000, 1000); int top = clamp(centerY - (areaSize / 2), -1000, 1000); RectF rectF = new RectF(left, top, left + areaSize, top + areaSize); Log.i("calculateTapArea", "left--->" + left + ",,,top--->" + top + ",,,right--->" + (left + areaSize) + ",,,bottom--->" + (top + areaSize)); Log.i("calculateTapArea", "centerX--->" + centerX + ",,,centerY--->" + centerY); return new Rect(Math.round(rectF.left), Math.round(rectF.top), Math.round(rectF.right), Math.round(rectF.bottom)); } private int clamp(int x, int min, int max) { if (x > max) { return max; } if (x < min) { return min; } return x; } public Camera.Size getResolution() { Camera.Parameters params = myCamera.getParameters(); Camera.Size s = params.getPreviewSize(); return s; } 在OnTouch事件里面调用此方法。 public void focusOnTouch(MotionEvent event) { Rect focusRect = calculateTapArea(event.getRawX(), event.getRawY(), 1f); Rect meteringRect = calculateTapArea(event.getRawX(), event.getRawY(), 1.5f); Camera.Parameters parameters = mCamera.getParameters(); parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO); if (parameters.getMaxNumFocusAreas() > 0) { List<Camera.Area> focusAreas = new ArrayList<Camera.Area>(); focusAreas.add(new Camera.Area(focusRect, 600)); parameters.setFocusAreas(focusAreas); } if (parameters.getMaxNumMeteringAreas() > 0) { List<Camera.Area> meteringAreas = new ArrayList<Camera.Area>(); meteringAreas.add(new Camera.Area(meteringRect, 600)); parameters.setMeteringAreas(meteringAreas); } mCamera.cancelAutoFocus(); mCamera.setParameters(parameters); mCamera.autoFocus(this); } 我是天王盖地虎的分割线 本文转自我爱物联网博客园博客,原文链接:http://www.cnblogs.com/yydcdut/p/4106966.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

MaxCompute常见错误汇总(更新ing)

从今天开始,小编会为大家陆续解读MaxCompute常见问题,帮助大家快速上手MaxCompute,玩转大数据计算平台,同时,也欢迎大家一起补充。 十大常见错误码 No1.FAILED: ODPS-0130131 报错信息:FAILED: ODPS-0130131:[1,15] Table not found - table test0517.dual cannot be resolved 用户场景:用虚拟表计算,select sum(1+1) from dual 问题分析:表不存在,MaxCompute分布式系统不支持dual虚拟表。 解决方案:可以自建dual表。 No2.FAILED: ODPS-0130071 报错信息:FAILED: ODPS-0130071:Semantic analysis exception - Cannot in

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册