小编Joh*_*nny的帖子

如何返回具有任意类型成员的IList

我不确定这是否可能,但是这里有:我有一个类Zoo,其中包含动物类型字典 - >动物列表.例如

Cat Type -> {Cat1, Cat2}
Zebra Type -> {Zebra1, Zebra2}
Run Code Online (Sandbox Code Playgroud)

Cat并且Zebra是.的子类Animal.现在Zoo有一个方法IList<Animal> GetAnimalsOfType(Type type).

我希望返回值是所请求动物的类型,因此IList<Animal>我不会得到一个IList<Cat>或者IList<Zebra>取决于我在类型参数中传递的动物类型.

这可能吗?如果是这样的话?

c# generics

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

如何使用EMGU计算DFT及其反转?

如何计算图像的DFT(使用EMGU),显示它然后计算反转以恢复原始图像?

我将在这里回答我自己的问题,因为我花了一段时间才弄明白.

c# image-processing emgucv

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

如何在 apk 中列出所有 3rd 方 jars?

给定一个 apk 文件,有没有办法列出其中的所有 jar 引用?我想不出用 aapt 来做到这一点的方法。我想可能有一条涉及 dex 到 jar 转换的复杂路线,但我想知道是否有更简单的方法。

java android apk

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

并行获取所有进程

我正在尝试使用C#的TPL并行获取所有进程的CPU%.我的代码是:

        private IDictionary<Process, int> _usage = new Dictionary<Process, int>();

        public ProcessCpuUsageGetter()
        {            
            Process[] processes = Process.GetProcesses();
            int processCount = processes.Count();
            Task[] tasks = new Task[processCount];

            int counter = 0;
            for (int i = 0; i < processCount; i++)
            {
                tasks[i] = Task.Factory.StartNew(() => DoWork(processes[i]));
            }

            Task.WaitAll(tasks);
        }

        private void DoWork(object o)
        {
            Process process = (Process)o;
            PerformanceCounter pc = new PerformanceCounter("Process", "% Processor Time", process.ProcessName, true);
            pc.NextValue();
            Thread.Sleep(1000);
            int cpuPercent = (int)pc.NextValue() / Environment.ProcessorCount;
            _usage.Add(process, cpuPercent);
        }
Run Code Online (Sandbox Code Playgroud)

但它失败了An item …

c# windows task-parallel-library

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

线程间消息传递实现

我要做的是让一个线程将从其父线程收到的消息写入一个OutputStream,监听一个InputStream以获得回复,然后通过回复通知父线程.我编写了两个测试类,它们以不同的方式执行类似但更简单的操作.方法1仅在"before loop"取消注释调试语句时有效,方法2仅打印"message from child"调试语句.我究竟做错了什么?

方法1

public class Parent {
    private static int out = 0;
    private static int in = 0;

    public static void main(String[] args) {
        final Object locker = new Object();
        Thread t = new Thread(new Runnable() {          
            @Override
            public void run() {
                while (true) {
                    synchronized (locker) {
                        try {
                            locker.wait();
                            System.out.println("Message from parent " + out);
                            in = out + 10;
                            locker.notify();
                        } catch (InterruptedException e) {
                            // TODO Auto-generated catch block …
Run Code Online (Sandbox Code Playgroud)

java multithreading

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

任务并行库 - 我不明白我做错了什么

这是一个两部分问题.
我有一个类异步获取所有进程并轮询它们的CPU使用情况.昨天我有一个错误,它在这里解决.
问题的第一部分是解决方案为何有所帮助.我不明白这个解释.
问题的第二部分是,"Object reference not set to an instance of object"当我尝试在流程结束时打印结果时,我偶尔会遇到异常.这是因为item.Key确实是空的.我不明白为什么那是因为我检查断点(process == null)并且它从未被击中.我究竟做错了什么?
代码如下.

class ProcessCpuUsageGetter
    {
        private IDictionary<Process, int> _usage;

        public IDictionary<Process, int> Usage { get { return _usage; } }

        public ProcessCpuUsageGetter()
        {
            while (true)
            {
                Process[] processes = Process.GetProcesses();
                int processCount = processes.Count();
                Task[] tasks = new Task[processCount];

                _usage = new Dictionary<Process, int>();
                for (int i = 0; i < processCount; i++)
                {
                    var localI = …
Run Code Online (Sandbox Code Playgroud)

c# asynchronous task-parallel-library

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

无法访问ember.js视图中的属性

我有一个谷歌地图的视图,我希望它公开地图,以便我可以从另一个对象绑定它.问题是,因为我只能实例化地图didInsertElement(直接实例化它将无法工作,因为尚未渲染div)我无法访问地图的真实值(它总是返回null).

这是我的代码:

Places = Ember.Application.create();
Places.MapView = Ember.View.extend({
    tagName : 'div',    
    map : null,               
    didInsertElement : function() {
        this._super();
        this.set('map', new google.maps.Map($('#map').get(0), {
            mapTypeId: google.maps.MapTypeId.ROADMAP,
        center: new google.maps.LatLng(-33.8665433,151.1956316),
        zoom: 15
        }));
        this.get('map'); // Returns the value of the map OK
    }
});

Places.searchController = Ember.Object.create({
    mapBinding: 'Places.MapView.map' // Doesn't work
}
Run Code Online (Sandbox Code Playgroud)

这是模板:

<script type="text/x-handlebars">
{{#view Places.MapView id="map"}}{{/view}}          
</script>
Run Code Online (Sandbox Code Playgroud)

如果我MapView直接设置任何其他属性我没有问题绑定到它.关于如何解决这个问题的任何想法?

google-maps ember.js

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

如何读取自定义配置对象列表

我想在稍微不同的场景中实现Craig Andera的自定义XML配置处理程序.我想要做的是读入任意长度的自定义对象列表,定义如下:

public class TextFileInfo
{
    public string Name { get; set; }
    public string TextFilePath { get; set; }
    public string XmlFilePath { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我设法为一个自定义对象复制了Craig的解决方案,但如果我想要几个呢?

Craig的反序列化代码是:

public class XmlSerializerSectionHandler : IConfigurationSectionHandler
{
    public object Create(object parent, object configContext, XmlNode section)
    {
        XPathNavigator nav = section.CreateNavigator();
        string typename = (string)nav.Evaluate("string(@type)");
        Type t = Type.GetType(typename);
        XmlSerializer ser = new XmlSerializer(t);
        return ser.Deserialize(new XmlNodeReader(section));
    }
}
Run Code Online (Sandbox Code Playgroud)

如果可以的话,我想我能做到这一点

Type t = Type.GetType("System.Collections.Generic.List<TextFileInfo>")
Run Code Online (Sandbox Code Playgroud)

工作,但它抛出

Could not load type 'System.Collections.Generic.List<Test1.TextFileInfo>' …
Run Code Online (Sandbox Code Playgroud)

c# configuration app-config

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