标签: application-shutdown

C#:在终结器中,如何确定应用程序是否正在关闭?

我有一个终结器似乎总是在应用程序关闭期间失败.我认为这是因为它持有一些在那时不再有效的本地资源.有没有办法在析构函数/终结器中告诉它是否因应用程序关闭而被调用?

谢谢!

.net c# destructor finalizer application-shutdown

4
推荐指数
1
解决办法
1281
查看次数

是否有C++功能可以关闭电脑?

是否有C++功能可以关闭电脑?既然我怀疑有一个(至少在标准库中),我可以用C++调用什么是windows函数?

基本上,在c ++中关闭windows xp计算机的代码是什么?

c++ windows application-shutdown

3
推荐指数
2
解决办法
1万
查看次数

如何通过Windows API关闭电脑?

从未编写过winapi,所以我在这里遇到了一些问题.

我需要从我的应用程序中关闭我的电脑.

我发现这个示例链接文本然后我发现这个例子如何更改权限链接文本

但我有问题如何获取该参数HANDLE hToken //访问令牌句柄

我想我需要在下一个命令中使用它来获取参数OpenProcessToken LookupPrivilegeValue AdjustTokenPrivileges但是有很多参数我不知道如何处理它们.

也许你有一些例子我如何获得HANDLE hToken参数来使其工作.

顺便说一句,我已经看到了以下帖子链接文字

非常感谢你们.

c++ windows winapi application-shutdown

3
推荐指数
2
解决办法
7429
查看次数

如何在类库中订阅应用程序关闭事件

某个应用程序使用了一个类库.它包含一个外部使用的A类,以及库中另一个私有类B的静态字段.用户应用程序使用库中的A类实例.

当应用程序关闭时,我想在B类中执行一些清理.是否有可能在没有用户应用程序的任何操作的情况下在B类中捕获应用程序关闭事件?

class B
{
    public B()
    {
        // attach Handler() to applicaiton shutdown event
    }

    void Handler()
    {
        // do some work
    }
}
Run Code Online (Sandbox Code Playgroud)

c# events class-library subscription application-shutdown

3
推荐指数
1
解决办法
931
查看次数

如何实现在执行结束时自动关闭的线程池?

我正在编写一个理论上可以在不同环境中使用的Java客户端:Java main(),servlet容器或依赖注入.

客户端实现内部连接线程池.

这种方法的问题在于,客户端的用户不知道实现内部线程池的事实将使他或她的应用程序在关闭时"挂起".我的用户需要知道向库发送shutdown()消息.

我想知道是否可以采取任何其他替代方法,一方面,允许我为我的连接启动一个线程池; 而且,另一方面,捕获一些事件,可能是一个JVM事件,表明JVM正在关闭,这将允许我调用我的shutdown()实现.

java application-shutdown threadpool shutdown-hook

2
推荐指数
1
解决办法
4111
查看次数

Application.Exit()是否会杀死后台线程?

我创建了一个运行多个后台线程的表单.我添加了另一个处理异常和错误的类(如果有的话).当代码运行时,如果发生应该强制应用程序关闭的错误,我可以使用Application.Exit()吗?这会杀死后台线程吗?

c# multithreading application-shutdown

2
推荐指数
1
解决办法
2312
查看次数

Java - 在程序结束时对象不是"垃圾回收"?

public class Main {

    public static void main(String[] args) throws InterruptedException {
        ClassA a = new ClassA();
        a = null;

        //Runtime.getRuntime().gc();
        Thread.sleep(4000);
    }
}

public class ClassA {

    @Override
    public void finalize(){
        System.out.println("cleaned");
    }  
}
Run Code Online (Sandbox Code Playgroud)

使用上面的代码,finalize()永远不会执行.控制台上没有任何内容.从gc()中删除注释时,执行finalize(),并将"已清除"打印到控制台.为什么我必须明确地调用垃圾收集器?

java garbage-collection finalize application-shutdown

1
推荐指数
1
解决办法
564
查看次数

如何在NSUserDefaults中保存NSMutableDictionary

我需要在NSUserDefaults中保存NSMutableDictionary.我在网上搜索了很多例子,但没有收到任何足够相关的例子.有人可以发布一小段代码,它会在关机时在NSUserDefaults中保存NSMutableDictionary,并在应用程序启动时检索它吗?还能告诉我在哪里放置代码.

我自己有一些代码,但它不起作用.

appDelegate.h - 检索数据

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    

    // Override point for customization after application launch.

      NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
      NSData *dat = [defaults objectForKey:@"theKey"];
      tmpArray  = [[NSMutableArray alloc] init];
      tmpArray = [NSKeyedUnarchiver unarchiveObjectWithData:dat];

      [self.window makeKeyAndVisible];
      [window addSubview:tabBarController.view];
      return YES;
}
Run Code Online (Sandbox Code Playgroud)

appDelegate.h - 存储数据

- (void)applicationWillTerminate:(UIApplication *)application {

      [self saveContext];
      NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
      NSData *dat = [NSKeyedArchiver archivedDataWithRootObject:tmpArray];
      [defaults setObject:dat forKey:@"theKey"];
}
Run Code Online (Sandbox Code Playgroud)

是的,它是一个数组,但我需要一个NSMutableDictionary.

iphone application-shutdown nsuserdefaults nsmutabledictionary data-persistence

1
推荐指数
1
解决办法
464
查看次数

setOnClickListener - 应用程序意外停止

只要我在代码中使用setOnClickListener作为按钮,当我启动应用程序时就会说 the application has stopped unexpectedly

package example.khumbayatabbed;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashMap;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.app.ListActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;

public class Category extends ListActivity{
    int categ=0;
    String[] categories = new String[100];
     Button button1;
     EditText edittext1;
       ArrayList<HashMap<String, String>> …
Run Code Online (Sandbox Code Playgroud)

android onclick application-shutdown buttonclick

1
推荐指数
1
解决办法
1077
查看次数

如何区分UI关闭和使用Delphi强制关闭

如果用户尝试关闭应用程序,我想显示一个“关闭查询”确认对话框。如果系统关闭或任务管理器中的任务或进程正在结束,我只想清理并关闭。

我尝试了这段代码:

private
procedure WMEndSession(var Message: TWMEndSession); message WM_ENDSESSION;
Run Code Online (Sandbox Code Playgroud)

...

procedure TxxxForm.WMEndSession(var Message: TWMEndSession);
begin
  gShuttingDown := Message.EndSession;
end;
Run Code Online (Sandbox Code Playgroud)

...

procedure TxxxForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  Application.ProcessMessages;
  if gShuttingDown then
    CanClose := True
  else
    CanClose := MessageDlg('Are you sure you want to stop the close?', mtConfirmation,
       [mbYes, mbNO], 0) = mrYes;
end;
Run Code Online (Sandbox Code Playgroud)

弹出确认显示我是从任务管理器中关闭程序还是终止进程。

delphi shutdown application-shutdown delphi-xe4

1
推荐指数
1
解决办法
1039
查看次数