草庐IT

finalize

全部标签

go - Java finalize 方法的等价物

Go中有javafinalize之类的方法吗?如果我有一个像这样的类型结构typeFoostruct{f*os.File....}func(p*Foo)finalize(){p.f.close()}如何确保当对象被垃圾回收时,文件被关闭? 最佳答案 您也不会在Java中这样做。在Java中正确的做法是使用finallyblock将其关闭在您打开的位置附近。您可以在go中使用类似的模式和defer函数来进行清理。例如,如果您这样做(java):try{open();//dostuff}finally{close();}在开始时,你会这

c++ - __cxa_finalize 和 __attribute__

据我所知,一个程序(在Linux中用C++编写)在退出main函数时调用__cxa_finalize。我创建了一个共享库并在主函数中使用了这个库。我想在主程序加载/卸载这个库时采取一些行动。我发现函数__attribute__在创建共享库时可以用于该目的(我猜这个函数应该在共享库代码中实现)我添加了如下内容:void__attribute__((constructor))my_load(void);void__attribute__((destructor))my_unload(void);我在以下链接中实现了函数my_load和my_unload:http://tdistler.co

c - MPI_Finalize() 没有完成

#include#include#includeintmain(intargc,char*argv[]){inti,done=0,n;doublePI25DT=3.141592653589793238462643;doublepi,tmp,h,sum,x;intnumprocs,rank;MPI_Statusstatus;MPI_Init(&argc,&argv);MPI_Comm_size(MPI_COMM_WORLD,&numprocs);MPI_Comm_rank(MPI_COMM_WORLD,&rank);if(numprocs1\n",numprocs);else{while

mongodb - 何时在 mongodb cxx r3.0.2 驱动程序中使用 finalize

我很困惑,在onlinedoc,的代码片段中它显示了调用update_many方法时finalize的用法,如下所示:mongocxx::stdx::optionalresult=collection.update_many(document{}但是我在没有finalize的mongocxx驱动代码中看到了示例代码//Updatemultipledocuments.{//@begin:cpp-update-multiple-documentsbsoncxx::builder::stream::documentfilter_builder,update_builder;filter_bu

mongodb - 何时在 mongodb cxx r3.0.2 驱动程序中使用 finalize

我很困惑,在onlinedoc,的代码片段中它显示了调用update_many方法时finalize的用法,如下所示:mongocxx::stdx::optionalresult=collection.update_many(document{}但是我在没有finalize的mongocxx驱动代码中看到了示例代码//Updatemultipledocuments.{//@begin:cpp-update-multiple-documentsbsoncxx::builder::stream::documentfilter_builder,update_builder;filter_bu

java - 修复太多打开的文件异常(我正在使用 try-catch-finally)

我有一个用JAVA(1.8版)编写的Web服务,它连接HSM并通过套接字发送/接收数据。我的应用程序部署在linux上的ApacheTomcat/8.5.14上。虽然我正在正确关闭套接字连接,但我有java.net.SocketException:Toomanyopenfiles这是我的类(class)publicclassmyClassimplementsAutoCloseable{Socketsocket;DataInputStreamin;DataOutputStreamout;publicmyClass(Stringip,intport)throwsException{try{

MongoDB Map Reduce - 完成以跳过一些结果

我有一个适用于集合的mapreduce函数,如下所示:functionMap(){emit(this.name,{count:1,flag:this.flag});}functionReduce(key,values){varcount=0;varflag=false;for(variinvalues){count=count+1;if(i.flag)flag=true;}varreduced={count:count,flag:flag}returnreduced;}functionFinalize(key,reduced){if(reduced.count>10||reduced.

MongoDB Map Reduce - 完成以跳过一些结果

我有一个适用于集合的mapreduce函数,如下所示:functionMap(){emit(this.name,{count:1,flag:this.flag});}functionReduce(key,values){varcount=0;varflag=false;for(variinvalues){count=count+1;if(i.flag)flag=true;}varreduced={count:count,flag:flag}returnreduced;}functionFinalize(key,reduced){if(reduced.count>10||reduced.

php - 在 PHP 中, "final static"和 "const"有什么区别?

我意识到这个问题已经在其他地方针对不同的编程语言提出过...但这不是PHP领域中相同答案的100%指标,所以我问这个问题。谁能告诉我“finalstatic”和“const”之间的区别,特别是在PHP中? 最佳答案 最终方法或类不能被子类修改。这可以防止类继承、方法覆盖和/或方法的重新定义。Onlyclassdefinitionsand/ormethodsinsideaclasscanbedefinedasfinal.静态将类方法或属性声明为静态值,以便您无需实例化对象即可访问它们。这些在父类和子类之间共享。Aclassdefini

声明为 "final"的 PHPUnit Stubbing 类方法

我正在为使用模拟调用另一个类的方法的类方法编写单元测试,只有需要调用的方法被声明为final方法,因此PHPUnit无法模拟它。我可以采用其他方法吗?例子:要模拟的类classClass_To_Mock{finalpublicfunctionneedsToBeCalled($options){...}}我的测试用例classMyTestextendsPHPUnit_Framework_TestCase{publicfunctiontestDoSomething(){$mock=$this->getMock('Class_To_Mock',array('needsToBeCalled')