问题列表 - 第5411页

C++ - 如何设置文件权限(跨平台)

我正在使用C++ ofstream写出一个文件.我想将权限设置为只能由用户访问:700.在unix中; 我想我可以发一个system("chmod 700 file.txt");但我需要这个代码才能在Windows上运行.我可以使用一些Windows API; 但是最好的c ++跨平台方法是什么?

c++ unix windows

22
推荐指数
3
解决办法
5万
查看次数

WCF InstanceContextMode.Multiple问题

所以我在WinForms应用程序中托管WCF服务.我有以下内容

[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, 
         InstanceContextMode = InstanceContextMode.PerCall)]
public class Test : ITest
{
    public string TestIt(string input)
    {
        Thread.Sleep(5000);
        return "test";
    }
}
Run Code Online (Sandbox Code Playgroud)

我正在使用命名管道,并有两个另一个应用程序的实例作为上述WCF服务的客户端(在WinForms应用程序中运行).我认为基于Multiple的ConcurrencyMode设置,当Client1调用Test Service时,Client2不必等到第一个调用完成.但是,当Client1调用TestIt时,Client2会阻塞,直到来自Client1的调用完成!?!?!根据上述设置,它不应每次都创建一个新实例吗?

另外,保持托管WCF服务响应的WinForms应用程序的最佳方法是在单独的线程上运行WCF服务吗?

注意:在Test类上设置[CallbackBehavior(UseSynchronizationContext = false)]不会缓解此问题.该服务仍然一次只响应一个请求.

concurrency wcf

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

自定义RunLoop模式

我在这做错了什么?我错过了什么?

- (void)scheduleTimer
{
    NSTimer *timer = [NSTimer timerWithTimeInterval:0.15
                                             target:self
                                           selector:@selector(wtf:)
                                           userInfo:nil
                                            repeats:NO];

    // This works fine
//  [[NSRunLoop currentRunLoop] addTimer:timer
//                               forMode:NSDefaultRunLoopMode];

    // This doesn't work at all - how come?
    [[NSRunLoop currentRunLoop] addTimer:timer
                                 forMode:@"MyCustomRunLoopMode"];   
}
- (void)wtf:(NSTimer *)aTimer
{
    NSLog(@"wtf");
}
Run Code Online (Sandbox Code Playgroud)

NSRunLoop的文档似乎表明可以创建自定义的runloop模式.我错过了什么吗?

(这是Mac OS X中标准GUI应用程序的主线程)


更新:请注意,我提到这是在标准应用程序的主线程上.因此,我自己并没有运行runloop.这一切都由NSApplication处理.

objective-c

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

为什么此查询执行全表扫描?

查询:

SELECT tbl1.*
   FROM tbl1 
JOIN tbl2
     ON (tbl1.t1_pk  = tbl2.t2_fk_t1_pk
AND tbl2.t2_strt_dt <= sysdate
AND tbl2.t2_end_dt  >= sysdate)
JOIN tbl3 on (tbl3.t3_pk = tbl2.t2_fk_t3_pk
AND tbl3.t3_lkup_1 = 2577304
AND tbl3.t3_lkup_2 = 1220833)
where tbl2.t2_lkup_1   = 1020000002981587;
Run Code Online (Sandbox Code Playgroud)

事实:

  • Oracle XE
  • tbl1.t1_pk是主键.
  • tbl2.t2_fk_t1_pk是该t1_pk列上的外键.
  • tbl2.t2_lkup_1已编入索引.
  • tbl3.t3_pk是主键.
  • tbl2.t2_fk_t3_pk是该t3_pk列上的外键.

在tbl1中对11,000行和tbl2中的3500行的数据库进行解释计划表明它正在对tbl1进行全表扫描.在我看来,如果它可以在tbl1上进行索引查询,它应该更快.

在tbl1中对11,000行和tbl2中的3500行的数据库进行解释计划表明它正在对tbl1进行全表扫描.在我看来,如果它可以在tbl1上进行索引查询,它应该更快.

更新:我尝试了一些你建议的提示,解释成本变得更糟!现在我真的很困惑.

进一步更新:我终于可以访问生产数据库的副本,"解释计划"使用索引和低成本查询显示它.我想有更多的数据(在tbl1中超过100,000行,在tbl2中有50,000行)是让它决定索引是值得的.感谢所有帮助过的人.我仍然认为Oracle性能调优是一种黑色艺术,但我很高兴你们中的一些人理解它.

进一步更新:我已根据前雇主的要求更新了问题.他们不喜欢在谷歌查询中显示他们的表名.我应该知道的更好.

sql oracle query-optimization

4
推荐指数
2
解决办法
4568
查看次数

在MySQL的一个字段中拥有多个FK是一个好主意吗?

我正在建立一个数据库,我有兴趣拥有一个类似Facebook的朋友系统.我最初的计划是有这样一张桌子:

uid  friends
4    30,23,12,33
30   54,92,108
Run Code Online (Sandbox Code Playgroud)

所有这些数字都是带有用户信息的表格的FK.我被告知这是不可取的,实际上是不可能的,因为MySQL只会处理好FK,如果他们是单元格中唯一放置的那个.也许是这样的?

uid(PK) friend
4        30
4        23
4        12
30       54
30       92
30       108
Run Code Online (Sandbox Code Playgroud)

等.这不会给我留下大量的行吗?(成千上万?)第一种技术在时间和效率方面不值得吗?

mysql database-design

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

手动生成Faces上下文

我有两个系统,我正在尝试整合.一个是基于原始servlet构建的,新的一个是使用IceFaces构建在JSF上的.我正在尝试促进跨系统登录.我的想法是,我在旧系统中有一个按钮,它将适当的信息发布到新站点并将其记录下来.

好吧,理想情况下,我只想使用一个普通的旧servlet在新网站上使用它.转到新站点的Servlet,执行它需要做的事情并转发到仪表板上.

我们的安全性通过托管bean处理.但是,当你到达Servlet时,没有面部上下文.那么,我将如何创建一个新的面部上下文?

我有一个备份计划,我可以随时链接到一个虚拟的.iface页面,它将为我创建FacesContext,然后创建一个支持bean,当它获得实例化然后转发到主页面时将执行操作.但这感觉非常像黑客.

任何帮助,将不胜感激!

编辑:我采取了备份的方式.基本上,我发布到这样的页面:

<f:view>
   <ice:outputText value="#{EntryPoint}"/>
</f:view
Run Code Online (Sandbox Code Playgroud)

支持豆看起来像......

public EntryPoint() {
      try {
         HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
         HttpServletResponse response = (HttpServletResponse) FacesContext.getCurrentInstance().getExternalContext().getResponse(); 
         String loginID = request.getParameter("loginID");
         //Do some code to load the user/permissions
         response.sendRedirect(
            //The appropriate page
         );
      } catch (IOException ex) {
         logger.error(null, ex);
      } catch (SQLException ex) {
         logger.error(null, ex);
      }
   }
Run Code Online (Sandbox Code Playgroud)

这仍然感觉像是一个黑客,但我不知道如何解决这个问题.理想情况下,我将POST发送到servlet,获取loginID,构建用户并将其直接放入托管bean.但是,FacesContext在那时并不存在.

还有其他想法吗?

java jsf icefaces servlets

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

如何查看实体框架的待定更改?

我正在使用ADO.NET实体框架创建一个应用程序.

我可以在调试时逐行浏览我的代码,并为每个执行的查询观察SQL Server Profiler,但我无法弄清楚所有这些SQL命令的来源!

有时当我执行时SaveChanges(),实体框架执行意外的,奇怪的INSERTS.他们有时会破坏申请.我无法弄清楚我正在做些什么来引起他们.

如何监视排队等待SaveChanges()呼叫的挂起更改?

.net c# entity-framework

43
推荐指数
4
解决办法
2万
查看次数

Asp.NET MVC模型绑定 - 使用绑定参数属性为简单类型分配前缀

我有一个.net mvc应用程序,其控制器操作接受用户注册帖子.我有以下UI字段:emailaddress,firstname,lastname,password和confirmpassword.其中一些字段不属于模型对象(即确认密码不属于用户模型,仅属于密码).我的注册表位于与登录表单相同的视图中.所以我必须在同一个视图上使用独立的表单,每个表单都返回不同的操作.

我想我可以为表单元素分配前缀,以分隔寄存器和登录之间的相似字段.我遇到的问题是验证,如果发生错误,视图被重新加载,显示验证消息,但是像电子邮件(存在于登录和注册中)这样的字段都会填充先前输入的地址.另外,我在登录和注册字段上面都有一个验证摘要.注册期间发生错误时,将使用错误消息填充两个验证摘要.我认为为字段分配前缀(register.fieldname和login.fieldname)可能有助于解决这些问题.

因此,当register操作处理post时,它不再找到注册表单字段的值,而是返回null.以下是此操作使用的方法签名...

关于这里发生的事情的任何输入都会很棒.

谢谢杰里米

 public ActionResult Register([Bind(Prefix = "Register")] string emailAddress, [Bind(Prefix = "Register")] string firstName, [Bind(Prefix = "Register")] string LastName, [Bind(Prefix = "Register")] string password, [Bind(Prefix = "Register")] string confirmPassword)
Run Code Online (Sandbox Code Playgroud)

以下是我的ui,它代表注册表格....

<h2>Create a New Account</h2>
  <p>
      Use the form below to create a new account. 
  </p>
  <p>
      Passwords are required to be a minimum of <%=Html.Encode(ViewData["PasswordLength"])%> characters in length.
  </p>
  <%= Html.ValidationSummary() %>

  <% using (Html.BeginForm("register", "account")) { %>
    <div>
      <fieldset>
        <legend>Account Information</legend>

        <table>
          <tr>
            <td><label for="EmailAddress">Email …
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net asp.net-mvc model-binding

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

我该如何解释这个JVM错误?

我有一个Java应用程序,它使用一些本机代码,这是错误的.我想搞清楚在那里它的断层,但我不知道如何读hs_err_pid转储文件:

Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x256cbc]
V  [libjvm.so+0x25df69]
V  [libjvm.so+0x25dbac]
V  [libjvm.so+0x25e8c8]
V  [libjvm.so+0x25e49f]
V  [libjvm.so+0x16fa3e]
j  br.com.cip.spb.single.SPBRequestApplicationController.processJob(Lcom/planet/core360/docgen/ProcessingEnvironment;Lcom/planet/core360/dsmv2/processing/ApplicationDataJob;)V+158
j  com.planet.core360.cgen.CgenProcessor.processJob(Ljava/lang/String;Lcom/planet/core360/docgen/ProcessingEnvironment;Lcom/planet/core360/dsmv2/processing/ApplicationDataJob;)V+108
j  com.planet.core360.cgen.CgenProcessor.processJob(Ljava/lang/String;Lcom/planet/core360/docgen/ProcessingEnvironment;Lcom/planet/core360/dsmv2/processing/ScheduledJob;)V+7
v  ~StubRoutines::call_stub
V  [libjvm.so+0x17af0c]
V  [libjvm.so+0x28b9d8]
V  [libjvm.so+0x17ad3f]
V  [libjvm.so+0x1a58a3]
V  [libjvm.so+0x18bc24]
C  [cgen+0xa6d6]
C  [cgen+0xae1e]  cgen_process_job+0x336
C  [cgen+0x10442]
C  [cgen+0x7714]
C  [cgen+0x38216]
C  [cgen+0x3a29d]
C  [cgen+0x37e3c]
C  [cgen+0x7558]
C  [libc.so.6+0x166e5]  __libc_start_main+0xe5
Run Code Online (Sandbox Code Playgroud)

基本上,指向的'j'帧是什么?是V+158指类中的字节码偏移量?我怎样才能追溯到这里的源线?

实际上,我喜欢这种垃圾桶的一般指南.那太棒了.

java debugging java-native-interface core hs-err

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

Sql分组

替代文字http://agricam.net/test.gif

我需要在市场营销人数改变之后在SQL中动态添加一行,其中标题为"Marketer Total",只应添加"Total"列.例如,在Marketer 22行的最后一行之后,应该有"Marketer Total",然后在Total列下面应该是1804.同样应该在Marketer 500的最后一行之后发生.

请参见http://agricam.net/test.gif上的图片

当前查询:

从SomeTable中选择Marketer,SubMarketer,Grade,Total,Convert(varchar,Date,101)[Date],其中Date> ='2/25/2009'和Date <'2/26/2009'和Marketer in('22' ,'500')分组由SubMarketer,Grade,Marketer,Date,总订单由Marketer提供

谢谢.

sql t-sql grouping sum

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