小编Que*_*ner的帖子

HTML 视频播放一段时间后返回 MEDIA_ERR_SRC_NOT_SUPPORTED 错误

我正在尝试使用 Chrome Mobile 中的 HTML5 视频播放器播放由第三方流式传输的视频,我面临的问题是视频可以在最小化时播放一段时间,一段时间后它决定退出并返回MEDIA_ERR_SRC_NOT_SUPPORTED - 音频/视频不支持错误;当我从最小化到最大化然后一遍又一遍地切换到最小化时,问题发生得更快。如果我不断点击视频本身,它似乎也发生得更快,我还隐藏了默认控件并使用我自己的自定义控件。

什么可能导致这个问题?我用 QuickTime 播放器在 Safari 中尝试了同样的事情,视频源没有死

编辑:做了一些更多的挖掘,发现了这个: Android HLS video mime type

我收到一个播放列表 m3u8 文件,但我的请求链接中没有 m3u8 但如果没有 m3u8 关键字,视频是否应该播放?我也在 android 4.4.4 上测试这个

html webkit google-chrome video-streaming http-live-streaming

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

无法访问主 elixir 项目中的依赖项配置

我有一个项目world_app,我已将其作为依赖包含在hello_app 中(如果相关,我已将其作为本地依赖项包含在内)

defp deps do
  [
    {:world_app, path: "../world_app"}
  ]
end
Run Code Online (Sandbox Code Playgroud)

world_app有config.exs有此配置

config :world_app, some_config: "config_string"
Run Code Online (Sandbox Code Playgroud)

当我尝试在hello_app 中获取在world_app中定义的配置变量时出现了我的问题(我在hello_app 中运行了 iex -S mix)

iex(1)> Application.get_all_env(:world_app)
[included_applications: []]

iex(2)> Application.get_env(:world_app, :some_config)
nil
Run Code Online (Sandbox Code Playgroud)

但是,当我在world_app 中做同样的事情时,我可以看到变量

iex(1)> Application.get_all_env(:world_app)
[some_config: "config_string", included_applications: []]

iex(2)> Application.get_env(:world_app, :some_config)
"config_string"
Run Code Online (Sandbox Code Playgroud)

我一直以为我可以从父应用程序访问依赖项的配置;我在这里错过了一些重要的东西吗?

我正在使用 Elixir 1.5.3 和 erlang 20

elixir-mix elixir

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

了解溢出的行为:隐藏在flexbox容器中

我遇到了一些关于柔韧性盒的问题,随着文本/内容的增长,柔韧性盒超出了容器的范围,并且仅在达到容器的指定最大宽度时才应用椭圆。

这是不理想的,因为父容器可以缩小到x像素,并且文本会强制其增长到我不希望的最大宽度。

看着这个小提琴,如果我删除overflow: hiddenchild1并将其应用到main,文本将刚刚被切断。

如果我overflow: hidden从中删除main并将其应用于child1,则会实现我想要的行为。

如果我overflow: hidden从它们两个中删除,则容器和文本将一直持续下去。

我只想知道为什么申请overflow: hidden才能child1产生期望的行为。文本不应该像溢出一样被截断main吗?

.main {
  display: flex;
  border: 1px solid black;
  height: 200px;
  padding: 10px;
  //overflow: hidden;

}
.child1 {
  display: flex;
  border: 1px solid red;
  height: 100px;
  overflow: hidden;
}
.child2 {
  flex: 1 1 auto;
  text-align: center;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
Run Code Online (Sandbox Code Playgroud)
<div class="main">
  <div class="child1">
    <div …
Run Code Online (Sandbox Code Playgroud)

html css css3 flexbox

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

多核处理器上的多线程,并发和并行

我一直在阅读有关该主题的文章,但对多线程和并行性有些困惑;我读过这个问题

“在多线程系统中,如何在CORES之间分配线程?可以说我有一个创建6个线程的程序。我的系统有3个CORES。在这种情况下,线程将分配在3个CORE之间,或者所有线程都在同一线程上执行核心?” -具有3个逻辑核心的物理CPU

问题的答案表明,我必须告诉OS哪个内核执行什么操作,这是使用Java或C#等语言进行多线程处理时的普遍真理吗?

链接到问题

在未指定哪个内核的情况下,如何用Java或C#等语言编写的多线程程序可以实现并行化?

我一直在学习一些erlang,并且达到了产生这些进程的主题。erlang会告诉OS将不同的进程分配给不同的内核吗?我从“ 学习一些语言”中看到了这段代码,它产生了10个进程,每个进程都会打印出一个数字,但是为什么要使用timer:sleep呢?是不是只是在使程序看起来并行时才停止运行,而是让其他程序可以运行(例如并发)?

4> G = fun(X) -> timer:sleep(10), io:format("~p~n", [X]) end.
#Fun<erl_eval.6.13229925>
5> [spawn(fun() -> G(X) end) || X <- lists:seq(1,10)].
Run Code Online (Sandbox Code Playgroud)

我在Java中实现了这一点,并得到了类似的结果,我创建了6个线程,每个“线程”都有一个循环,在该循环中打印线程名称,然后打印一个数字,然后休眠10毫秒。

public class ThreadTest {

public static void main(String args[]) {

    Thread t1 = new Thread(new Thread2());
    Thread t2 = new Thread(new Thread3());
    Thread t3 = new Thread(new Thread4());
    Thread t4 = new Thread(new Thread5());
    Thread t5 = new Thread(new Thread6());

    t1.start();        
    t2.start();
    t3.start();
    t4.start();
    t5.start();
  }

}
Run Code Online (Sandbox Code Playgroud)

看两个程序,它们是同时执行还是并行执行?我也意识到计算机速度很快,但是即使我不让java程序进入睡眠状态,它也只会一遍又一遍地打印东西。但是,使用erlang时,如果我取消睡眠,则有时会打印出很多数字,然后打印出进程数并继续计数,或者打印出所有数字,最后列出进程。

参考上面的问题,java是在一个内核上同时执行操作(使用上下文切换)还是使用更多的内核并并行执行操作,但是速度太快,无法给我随机结果?(不睡觉)

erlang是否使用更多的内核并并行处理事务,因为有时它会在计数中间打印出进程列表?(不睡觉)

注意:我故意遗漏了其他线程的代码,只是认为最好解释一下这些类的作用。

parallel-processing erlang multithreading multicore

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

无法删除我知道存在的mnesia表

我有一个我想删除的mnesia表.但是,当我尝试运行时,:mnesia.delete(TableName)我得到了这个错误{:aborted, {:no_exists, TableName}}

当我尝试通过运行创建相同的表时:mnesia.create_table(TableName, [attributes: [:id, :att1, :att2], disc_copies: [Node.self()]])我得到了回来{:aborted, {:already_exists, TableName}}

.DCD删除后,我仍然可以看到该表的文件,是什么导致这种情况以及如何解决?

注意:代码位于Elixir代码库中.

编辑:当我的应用程序启动时,我尝试删除并重新创建该表,即使它存在.

erlang mnesia elixir

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