小编Qix*_*Qix的帖子

如何提高ASP.NET MVC WEB API的性能?

我正在Visual Studio 2012中开发web api并为每个api调用返回JSON结果.

如何提高WEB API的性能?

rest json

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

这个代码中返回的是什么?

在这段代码中

class Parent {

    void show() {
        System.out.print("parent");
    }

    Parent a() {
        return this;
    }

}

class Child extends Parent {

    void show() {
        System.out.print("child");
    }

    public static void main(String arg[]) {
        Parent a = new Child();
        Parent b = a.a();
        b.show();
    }
}
Run Code Online (Sandbox Code Playgroud)

怎么return this;办?b.show()正在调用子方法show.那么this返回引用它的子类吗?如果没有,那么如何show()调用孩子的方法?

java

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

Java 8 Lambda重载

我似乎无法使它工作.

Function<Integer, Integer> test = x -> x+x;
Function<String, String> test = x -> x+x;
Run Code Online (Sandbox Code Playgroud)

产量

重复的局部变量 test

如何才能使其test.apply(5)返回10并test.apply("5")返回"55"

java lambda overloading java-8

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

远程应用程序强制关闭后,检测套接字关闭

我在Java套接字方面遇到了一些麻烦.我有一对应用程序在它们之间建立连接(一个打开a ServerSocket,调用accept()和等待,另一个通过Socket(InetAddress,int)构造函数连接.

建立套接字连接后,使用Thread它创建a Runnable.

 public void run() {    
    System.out.print("Watching Socket for closing ");
    while(running) {
        if(socket.isClosed()) {
            System.out.println("Socket has been closed");
            break;
        }
    }
    this.running = false;
    //safely ends this application by closing i/o and exiting.
}
Run Code Online (Sandbox Code Playgroud)

我的问题是,当其中一个应用程序意外关闭时(在我的情况下从Eclipse终止)调用Socket.isClosed()仍显示套接字已打开,因此循环保持运行,就好像Socket已打开一样.

当另一侧的Java应用程序被强制结束时,如何检测Socket何时关闭?

java sockets

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

在 HTML 中移动 CSS 的文件结构

我有一个index.html具有以下文件结构的文件:fl/contact/thanks/index.html

我的 CSS 文件夹具有以下文件结构:fl/css/style.css

我如何定位该style.css文件,以便它影响index.html具有当前文件结构的文件?

目前的设置是这样的:

<link rel="stylesheet" type="text/css" href="css/style.css">

html css

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

为什么这段代码是错误的?> 1 ::积分

我知道这很有效.

Preulde> 1::Int
1
Run Code Online (Sandbox Code Playgroud)

但这不起作用.

Preude> 1::Integral
Run Code Online (Sandbox Code Playgroud)

我想知道Int和Integral之间的区别.

haskell

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

删除void指针指向的内存

我正在创建一个新struct SThreadInfo函数:

struct SThreadInfo {
    int             function;
    Exchange*       pThis;
};

struct SThreadInfo *threadInfo = new (struct SThreadInfo);
    threadInfo->function    = 0;
    threadInfo->pThis       = this;
Run Code Online (Sandbox Code Playgroud)

然后,在同一个函数中,我创建一个新的线程,将struct作为void-pointer传递:

pthread_t ret;
pthread_create(&ret, NULL, Exchange::staticThreadHelper, (void*)threadInfo);
Run Code Online (Sandbox Code Playgroud)

在新线程中,我从void-pointer重建结构:

void* Exchange::staticThreadHelper(void* t)
{
    struct SThreadInfo* threadInfo = (struct SThreadInfo*)t;
    //....
    //....
}
Run Code Online (Sandbox Code Playgroud)

在这个函数的最后我想删除由t和分配的内存threadInfo.到目前为止,它适用threadInfo但不适用t

delete threadInfo;
delete static_cast<struct SThreadInfo*>(t);
Run Code Online (Sandbox Code Playgroud)

当我尝试将void-pointer强制转换回SThreadInfo时,会引发一个SIGABRT.有人能告诉我如何从空指针中正确删除内存吗?

c++ struct pointers void-pointers delete-operator

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

标准库是否有办法检查两个模板化类型的基本模板类型的相等性?

在想出正确的术语来充分搜索时遇到了麻烦,但是标准库是否有一些东西可以测试相同的基本模板类型?

template <typename T>
struct foo {};

template <typename T>
struct bar {};

static_assert(std::is_same_base_type<foo<int>, foo<float>>::value == 1);
static_assert(std::is_same_base_type<foo<int>, bar<int>>::value == 0);
Run Code Online (Sandbox Code Playgroud)

c++ type-traits template-templates c++17

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

对char数组的访问冲突

我在创建的char数组上遇到访问冲突new.

DispatchCommand(char* cmdStr)
        {
            // Dispatch
            for(int i = 0; i < sizeof(_lpCommands); i++)
            {
                const int len = strlen(_lpCommands[i].szCommand);
                char* cmdblip = new char[len + 1];
                memcpy(&cmdblip, cmdStr, len);
                cmdblip[len] = '\0';  // Access Violation

                if(strcmp(cmdblip, _lpCommands[i].szCommand) == 0)
                {
                    if(strlen(cmdStr) > strlen(_lpCommands[i].szCommand))
                        (*_lpCommands[i].cbCallback)(&cmdStr[strlen(_lpCommands[i].szCommand)]);
                    else
                        (*_lpCommands[i].cbCallback)("");

                    delete cmdblip;
                    return;
                }

                delete cmdblip;
            }

            // Error and return
            *Out::ServerInfo<<"Command not found!"<<ENDL;
        }
Run Code Online (Sandbox Code Playgroud)

_lpCommands是一个Command结构数组:

struct Command
{
    char* szCommand;
    CommandCallback cbCallback;
};
Run Code Online (Sandbox Code Playgroud)

生成的错误消息是:

Program.exe中0x012219cf处的未处理异常:0xC0000005:访问冲突写入位置0x66647366.

这是对使用的类似代码的重写 …

c++ arrays strcmp access-violation

0
推荐指数
2
解决办法
1545
查看次数

std :: list - 排序一个项目

是否可以根据一个项目对列表进行排序?

例如,如果我有

1,3,2,4,5,6,7 ... 1000000
Run Code Online (Sandbox Code Playgroud)

我知道,3是第二个元素,是可以有效地排序3到它之间的正确位置2,并4没有重新排序整个列表?

编辑:我还应该注意,在这种情况下,假设列表的其余部分已经排序; 它就是3现在不合适的地方.

c++ sorting stl list

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