小编Ole*_*gas的帖子

Google Chrome 开发人员工具 - 分析结果文件格式

我想知道 .cpuprofile 文件格式是否有任何(非)官方规范,这是在基于 Chromium 的浏览器的开发人员工具中使用 JavaScript 分析时生成的。

它是纯文本 JSON,因此很容易获取调用树数据,但我不明白如何获取每个函数的计时信息。

我也对每个函数的命中数感兴趣。

javascript profiling google-chrome google-chrome-devtools

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

为什么这段代码消耗内存并且没有完全回收?

我有一个简单的JavaScript代码,在无限运行时消耗内存.内存消耗由Google Chrome内存分析器监控.

  setInterval(function(){
     var xhr = new XMLHttpRequest();
     xhr.open('GET', 'json.txt', true);
     xhr.onreadystatechange = function() {
        if(this.readyState == 4 && this.status == 200) {
           console.log(this.responseText);
        }
     };
     xhr.send('');
  }, 500);
Run Code Online (Sandbox Code Playgroud)

带有上面代码示例的Html文件并json.txt托管在我的本地服务器上,获取文件的时间不超过500毫秒(总是大约7-10毫秒).

在很长一段时间内,内存图看起来就像那样 初始内存消耗图

编辑一小时工作后的同一个Chrome窗口 工作一小时后的图表

编辑 从长远来看(小时)并非所有内存都被回收,图形仍然在升序.我理解为什么内存被消耗,我不明白为什么它没有完全回收.

编辑 这是我如何减少内存泄漏

  var callback = function(){
      if(this.readyState == 4 && this.status == 200) {
          console.log(this.responseText);
      }
  } 

  setInterval(function(){
     var xhr = new XMLHttpRequest();
     xhr.open('GET', 'json.txt', true);
     xhr.onreadystatechange = callback;
     xhr.send('');
  }, 500);
Run Code Online (Sandbox Code Playgroud)

这种改进允许不将回调的闭包链接到xhrvar.

javascript garbage-collection xmlhttprequest

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

如何在后台播放音频

我使用VideoView从URL播放音频.我的代码如下:

Uri video = Uri.parse(url[i]);
vv.setVideoURI(video);
vv.setMediaController(mediaController);
vv.start();
Run Code Online (Sandbox Code Playgroud)

我想在后台播放音频.怎么实现呢?

android android-videoview

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

android中的致命异常

我编写了简单的客户端服务器套接字编程代码如下

MyServer.java

 import java.io.DataInputStream;
 import java.io.DataOutputStream;
 import java.io.IOException;
 import java.net.ServerSocket;
 import java.net.Socket;


 public class MyServer {

   public static void main(String[] args){
   ServerSocket serverSocket = null;
   Socket socket = null;
   DataInputStream dataInputStream = null;
   DataOutputStream dataOutputStream = null;

    try {
         serverSocket = new ServerSocket(8888);
         System.out.println("Listening :8888");
        } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }

   while(true){
    try {
    socket = serverSocket.accept();
    dataInputStream = new DataInputStream(socket.getInputStream());
    dataOutputStream = new DataOutputStream(socket.getOutputStream());
    System.out.println("ip: " + socket.getInetAddress());
    System.out.println("message: " + dataInputStream.readUTF());
    dataOutputStream.writeUTF("Hello!"); …
Run Code Online (Sandbox Code Playgroud)

android

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