问题标签 [single-instance]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3730 浏览

asp.net-mvc - 我应该如何在 Web 应用程序中限定实体框架 DbContext 的依赖注入?(InstancePerHttpRequest 与 SingleInstance)

我已经读过 DbContext 对象应该创建为 InstancePerHttpRequest,而不是 SingleInstance,因为它的线程不安全性质,并且它可能在请求之间消耗太多资源,这很有意义。但我正在使用使用 DbContext 实例的 Repository 对象。我应该将它们设为 InstancePerHttpRequest 还是将它们设为 SingleInstance 并使用 DependencyResolver 来获取当前的 DbContext。

对于 Autofac(或任何其他 DI)、DbContext、存储库和基于服务的 Web 应用程序,最好的对象创建设计是什么?

另一个问题是,为每个 Web 请求(如请求中的 10-15 个)为每个存储库或服务创建不同的 DbContext 对象有多昂贵?

0 投票
4 回答
6570 浏览

c# - 如何运行一个 ac# WinForm 应用程序实例?

我有一个 C# 应用程序,它在启动时显示登录表单,并在用户通过身份验证后显示主表单。我使用 Mutex 来限制我的应用程序只能运行一个实例。而且,这仅适用于登录表单。显示主表单后,它不会限制用户重新打开登录表单。我正在寻找一种解决方案,一旦主窗体已经打开,登录屏幕就无法显示。

这是我的 Program.cs

0 投票
2 回答
124 浏览

c++ - 关于单身人士

好吧,我读到单身很糟糕,因为它们是反模式。我还读到,这样做的主要原因是对单例的全局引用,无论如何:

是否总是可以避免单身?

如果是这样,比如说我有一个 IOCP 网络,我需要对其进行一次初始化,并且该对象需要在软件的整个生命周期中保持不变。同样带有一个我称之为“绘画”的类,我将数据打印到屏幕上。如果我没有单独使用它,我仍然需要当前 Hwnd 的全局变量,并在每次我要使用它时在本地初始化对象(真的很烦人)。

所以使用单例是我的设计有缺陷的标志吗?我能做些什么来避免它们?

谢谢。

0 投票
1 回答
877 浏览

hibernate - 通过单个 struts 连接到多个数据库 - hibernate 应用程序

我们有一个在 tomcat 上运行的 struts-hibernate-mysql 应用程序。我们希望应用程序具有相同的代码库,但希望应用程序根据登录系统的用户动态连接到不同的数据库。

基本上,我们希望每个不同的学校都有不同的数据库。每所学校的数据库都会很大,因此我们决定为每所学校单独设置数据库,但 Java 代码库要相同。因此,我们不希望在 tomcat 上部署 Web 应用程序的多个实例,但单个应用程序应该能够根据登录的人连接到各种数据库。

如何做到这一点?

0 投票
1 回答
1883 浏览

java - 如何重新打开java应用程序launch4j单实例

摘要:通过单击桌面图标使不可见的应用程序再次可见。

我创建了一个 java 桌面应用程序并使用 Launch4j 创建可执行文件。我的应用程序需要作为单个实例运行。我已经在 Launch4j 配置 GUI 中检查该选项实现了这一点。当用户单击我的窗口上的 x 按钮(我正在使用 JFrame)时,窗口将变为不可见。它没有被处置。当用户双击系统托盘图标时,应用程序窗口再次可见。当用户双击应用程序桌面图标并且应用程序已经在运行时,我需要我的主窗口再次可见,就像系统托盘图标的行为一样。

Launch4j 在 Single instance 选项卡下提供了一个窗口标题选项。我认为这个选项可能是为了满足我的需要。但是,当我设置窗口标题并执行上述步骤时,我得到一个空白的白色窗口。在显示空白窗口的情况下,双击我的系统托盘图标将使我的应用程序出现在白色窗口中。这种行为表明,更改与顶级容器(Window、Frame、JFrame)相关的代码可能会产生影响。

您对如何在仍使用 Launch4j 的同时合并此行为有任何想法吗?(很方便)。

编辑:

我的问题的核心是如何定义当用户双击我的可执行桌面图标时会发生什么?如果我可以检查现有实例并将双击重定向到相关的系统托盘图标,那就太棒了。

0 投票
0 回答
305 浏览

json - WCF:如何(json)映射有时是数组,有时是单个对象的 DataMember?

在写这个问题的标题时,我碰巧看到了这个答案。但是我正在寻找一种在 WCF 客户端中执行此操作的方法。有没有办法将 JSON.Net 插入 WCF 客户端?

雅虎!几天前刚刚更改了PlaceFinder服务。一个变化是响应不再包含Results节点,而是现在包含Result节点。另一个变化是有时此节点包含结果对象数组(当有 2 个或更多结果时),有时它包含单个结果对象(当只有 1 个结果时)。

有没有办法使用 WCFDataMemberAttribute来反序列化这种结构,同时适应这两种情况?

以下是在 Fiddler2 中看到的 2 个示例响应(同样,结果的某些部分被省略了):

0 投票
1 回答
1124 浏览

objective-c - 如何创建 UINavigationController 的实例?

在我的第一个 iphone 应用程序中,我有一个 NavigationController。如何在 AppDelegate 中定义 UINavigationController 的实例并将其设置为我的默认导航控制器?

在.h中:

以 .m 为单位:

UINavigationItem 的 CustomNavigationItem 子类:

在.h中:

以 .m 为单位:

这是我的故事板的截图:http: //postimage.org/image/sv6elwmcz/

TabBarController 的 NavigationItem 的类设置为 CustomNavigationItem,并且 NavigationItem 的右键具有 -(IBAction)actionApply:(id)sender 动作。

0 投票
1 回答
1018 浏览

android - Android 启动模式不起作用

我从通知开始临时活动,只显示一些短信。无论我设置launchMode=singleInstance或noHistory=true,上次显示的临时活动将在从“最近打开”进入时再次显示。我希望仅在单击通知时才显示临时活动,而不是在“最近打开”中显示。先感谢您。

编辑:@Lalit Poptani,我尝试了你的建议,但这不是我需要的。在我使用 android:excludeFromRecents="true" 单击临时活动后,我的应用程序在“最近”中消失了。(用户找不到它,我的所有活动都被排除在外)

编辑:事实:我有 3 个 tmp 活动显示一些文本,就像 toast 一样,2 个是从小部件打开的,它们没有与应用程序堆栈混合。1 是从通知中打开的,它总是从“最近”中单独显示。

0 投票
3 回答
1544 浏览

mono - 如何在单声道下强制执行应用程序的单个实例?

因此,我能够在 Windows 上强制执行我的应用程序的单个实例,如下所示。

但是,在单声道下在 Linux 上运行相同的应用程序,此代码根本不起作用。我能够运行多个副本。我不知道这是否与我在终端上启动应用程序(如mono MyPro.exe. 如果这是问题所在,是否需要在执行命令行之前传递一些值。

提前致谢,

0 投票
1 回答
576 浏览

android - android:launchMode="singleTask" 不会阻止多个根活动共存

我的目的是确保任务中的根活动在任何情况下都只有一个实例。所以我设置了 android:launchMode="singleTask",它在大多数情况下都能正常工作。

但是,如果我将我的任务快速切换到其他人并多次切换回来,launchMode 设置似乎失去了效果。我观察到在前一个被销毁之前创建了一个新的活动实例,如下所示。

有人可以帮忙提供一个完美的解决方案,以确保在任何条件下都存在一个根活动实例吗?

提前致谢