runtime

项目运行过程中重启

倖福魔咒の 提交于 2020-01-21 09:36:14
背景:项目中定时处理数据时项目重启或者项目停止运行 原因:经检查发现是由于处理数据量过大导致内存不够用引起了项目的重启或者停止运行,内存使用量随着数据的处理过程持续增大,即使数据处理完毕后内存也没能释放。 内存增长截图如下 解决方案:由于部署环境最大内存只能分配8个G,目前想到的办法只能硬编码实现释放内存 采用了调用Runtime.getRuntime().gc();方法呼叫java虚拟机的垃圾回收器运行回收内存的垃圾以保证尽快的腾出可用的内存,如下为使用了Runtime.getRuntime.gc()后 当调用Runtime.getRuntime().gc();方法后系统运行垃圾回收器,调用gc()方法来建议JVM努力回收没有使用的对象内存,为了使它们占用的内存腾出来让别的对象快速使用。当调用完该方法后,JVM会尽它最大努力从所有不再使用(销毁)的对象中回收内存空间。 弊端:如果项目中还有其他服务在运行,调用gc()方法会导致正在运行的服务被暂停,故如果项目中此时还存 在服务在运行时不能调用gc()方法,此处调用gc()方法是因为项目中除了定时器触发运行的任务外无其他服务在运行,故影响不大。 当然最好的方法还是不要使用Runtime.getRuntime().gc(),但未能找到更好的办法,希望能有更好的解决办法 上述仅代表个人观点 来源: CSDN 作者: weixin

Big-O Notation regarding logarithms

混江龙づ霸主 提交于 2020-01-21 05:28:13
问题 I got asked an interview question that wanted me to discern the Big-O notation of several logarithmic functions. The functions were as follows: f(x) = log 5 (x) f(x) = log(x 5 ) f(x) = log(6*log x) f(x) = log(log x) I was told that the Big-O for the first and second are not equivalent and the third and fourth are not equivalent after mistakenly guessing the opposite. Can anyone explain why they are not equivalent and what their Big-O are then? 回答1: log 5 x is the same as writing log log log

ArcGIS runtime for wpf 部署

人走茶凉 提交于 2020-01-20 08:02:08
简介 ArcGIS runtime for wpf 是一个轻量级的产品,部署方便,甚至可以做到直接部署在U盘中,做到即插即用。 部署一般需要遵循如下几个步骤: 1. 设定部署许可 虽然ArcGIS runtime for wpf的开发是不需要许可,但是部署的时候需要许可。在程序的启动入口处,使用如下代码设定部署许可。 ArcGISRuntime.SetLicense("runtimestandard,101,rud415133273,none,***") 2. 配置相关的资源路径 wpf开发中通常会涉及到调用本地资源,如mpk,tpk等,为了使得应用程序部署后,能在任意位置都能正确的找到数据,在部署前,建议将程序里面调用本地资源的路径换成相对路径。 3. 使用Deployment builder 生成部署文件 wpf开发的程序的部署,有些依赖文件,比如localserver等,通过Deployment builder可以添加和生成项目需要的最少的依赖文件。 如选择部署的平台,部署的功能,如功能没有选择的话,则默认为基本地图功能。 生成的部署文件的目录结构如下: 开发环境的部署调用的是如下的部署文件, C:\Program Files (x86)\ArcGIS SDKs\WPF10.2.3\arcgisruntime10.2.3 4. 工程文件与部署文件混合

[Journey with golang] 5. Concurrent

情到浓时终转凉″ 提交于 2020-01-19 18:20:11
并发和并行是两种不同的概念。 并行意味着程序在任意时刻都是同时运行的 并发意味着程序在单位时间内是同时运行的 并行就是在任一粒度时间内都具备同时执行的能力,最简单的并行就是多机,多台机器并行处理。SMP表面上看是并行的,但由于是共享内存,以及线程间的同步等,不可能完全做到并行。 并发是在规定时间内多个请求都得到执行和处理,强调的是给外界的感觉,实际上内部可能是分时操作的。并发重在避免阻塞,使程序不会因为一个阻塞而停职处理。并发典型的应用场景:分时操作系统就是一种并发设计(忽略多核CPU)。 并行是硬件和操作系统开发者重点考虑的问题,作为应用层的程序员,唯一可以选择的就是充分借助操作系统提供的API和程序语言特性,结合实际需求设计出具有良好并发结构的程序,提升程序的并发处理能力。现代操作系统能够提供的最基础的并发模型就是多线程和多进程;编程语言这一层级可以进一步封装来提升程序的并发处理能力。 在当前的计算机体系下,并行具有瞬时性,并发具有过程性;并发在于结构,并行在于执行。应用程序具备好的并发结构,操作系统才能更好地利用硬件并行执行,同时避免阻塞等待,合理地进行调度,提升CPU利用率。应用层程序员提升程序并发处理能力的一个重要手段就是为程序设计良好的并发结构。 操作系统可以进行线程和进程的调度,本身具备并发处理能力,但进程切换代价还是过于高昂,进程切换需要保存现场,耗费较多的时间

闲话元注解@Retention

本秂侑毒 提交于 2020-01-19 07:32:30
元注解@Retention 元注解是用来描述注解的。@Retention用来描述注解将会在哪个层次存在,有三个值: RetentionPolicy.SOURCE:只会在java文件中存在,class文件中就不可见了。可以被编译器使用 RetentionPolicy.CLASS:会在class中可见,不需要被虚拟机加载。编译时可见 RetentionPolicy.RUNTIME:在class中可见,会被虚拟机加载。编译时可见,运行时可见 下面以一个例子来区分三个值。 Demo 定义一个注解: @Target(ElementType.FIELD) @Retention(RetentionPolicy.XXX) public @interface MyTest { } 一个类使用了这个注解: public class MyClass { @MyTest int val; } 一个类来获取Field然后获取注解,输出, try { Field field = MyClass.class.getDeclaredField("val"); Annotation[] annos = field.getAnnotations(); for (int i = 0; i < annos.length; i++) { System.out.println(annos[i].toString()); }

【tf.keras】Resource exhausted: OOM when allocating tensor with shape [9216,4096] and type float on /job:localhost/replica:0/task:0/device:GPU:0 by allocator GPU_0_bfc

亡梦爱人 提交于 2020-01-18 07:48:54
运行以下类似代码: while True: inputs, outputs = get_AlexNet() model = tf.keras.Model(inputs=inputs, outputs=outputs) model.summary() adam_opt = tf.keras.optimizers.Adam(learning_rate) # The compile step specifies the training configuration. model.compile(optimizer=adam_opt, loss='categorical_crossentropy', metrics=['accuracy']) # load weights from h5 file model.load_weights('alexnet_weights.h5') 最后会报错: OP_REQUIRES failed at cwise_ops_common.cc:70 : Resource exhausted: OOM when allocating tensor with shape[9216,4096] and type float on /job:localhost/replica:0/task:0/device:GPU:0 by allocator GPU_0_bfc

Trouble with FilePickers in Unity Hololens development

断了今生、忘了曾经 提交于 2020-01-17 07:15:05
问题 I found a terrific reference on how to get started with file pickers. But with that being said, I am not able to get the provided code working for my Unity Hololens app. My scenario: I've a file, lets say an object file, like such, 3DModel.obj. I want my app to be able to locate this file (3DModel.obj) at runtime, and then load it at runtime. I'm attempting to use these read/write functions but I'm getting no where. I've run through numerous functions such as, Windows.Storage.ApplicationData

微信小程序生成多张二维码以及支持async await

别来无恙 提交于 2020-01-17 02:10:28
微信小程序生成多张二维码以及支持async await 需求来了 原生小程序实现支持async await qrcode.js中引入runtime.js 使用 本次改造关键点: 1.引入runtime.js包,让原生小程序支持async await 2.修改qrcode.js里面的draw函数 2.1 返回promise对象,方便使用时是用await 接收 2.2 在draw函数绘制完成的回调函数里面,调用微信canvas 对象 api,wx.canvasToTempFilePath,直接将生成好的图片路径返回 需求来了 最近项目需要在列表里生成微信二维码,之前用的是qrcode.js,但是只是用于生成一张图片。这次网上搜了下插件,很多也都用qrcode.js,我找了个别的插件,base64-weapp-qrcode.js,使用了一下,效果很不好,决定还是用回qrcode.js。 这里要说明一点,网上看了下很多案例,基本都要使用setTimeout()延迟来接收绘制后的图片路径。这样做不太好,第一想一次性绘制多张二维码的话,实现比较麻烦,第二,我们没法确保setTimeout里面的函数执行的时候二维码一定生成好了。 不过没关系,把插件改改就好了。 原生小程序实现支持async await 想要方便的实现在列表里面绘制多张二维码,首先得让你的微信小程序支持async await

Socket communication?

≡放荡痞女 提交于 2020-01-16 08:44:34
问题 What are the preferred platforms to implement TCP socket communication? I'm interested in: scripting languages (eg Swocket for Python) and runtimes (eg .NET / Java). 回答1: In Java, we use Apache Mina, http://mina.apache.org/ Its performance rivals C implementation. 回答2: Socket communication implemented using Java NIO might be a good method. Some of Java based web servers use it. I remember jetty using it. Here is a link from Sun. 来源: https://stackoverflow.com/questions/1422929/socket

Compilation of two files from different compiler one is using other

允我心安 提交于 2020-01-16 08:41:42
问题 If I will compile something(x.cpp) with clang++ and generate dynamic link library, let's say x.so files and i will use that .so files in other source(y.cpp) which i am compiling using g++, so do I get any run time error. 来源: https://stackoverflow.com/questions/59623819/compilation-of-two-files-from-different-compiler-one-is-using-other