小编Nat*_*.Li的帖子

golang中的磁盘写性能

在下面的代码中,我使用golang中的bufio将消息写入文件.我的磁盘I/O速度约为1000M/s.奇怪的是,当写入文件的大小小于20G时,写入速度约为每秒800M~900M,略低于I/O速度.但是,当文件大小超过21G时,我发现写入速度大约是每秒200M,远低于I/O速度.我不知道为什么,任何人都可以帮助我?谢谢.

package main

import "fmt"
import (
    "os"
    "time"
    "flag"
    "bufio"
)

func main() {
    var pRound = flag.Int64("round", 3500000, "loop round")
    flag.Parse()

    var message string
    for i := 0; i < 1024; i++ {
        message += "1234567890"
    }
    message += "\n"

    f, err := os.OpenFile("server", os.O_CREATE|os.O_APPEND|os.O_RDWR, 0666)
    if err != nil {
        fmt.Println(err)
        return
    }
    w := bufio.NewWriter(f)

    var i int64 = 0
    round := *pRound
    start := time.Now()
    for i = 0; i < round; i++ {
        w.WriteString(message) …
Run Code Online (Sandbox Code Playgroud)

io performance file fwrite go

8
推荐指数
2
解决办法
2687
查看次数

如何检查当前PageView是否完全消失而下一个完全出现

我正在使用 Flutter 开发一个 APP。在 APP 中有一个 PageViews 列表,每个 PageView 在出现时都会加载和播放视频。当视频消失时,任何 PageView 都会停止播放视频。现在我有一个问题。当我在 PageViews 之间慢慢滑动时,会同时出现两个 PageView。每个 PageView 出现一个部分。但是两个PageView都在播放视频。我想知道我是否可以检查当前的PageView是否完全消失,然后我停止播放视频。当下一个 PageView 完全显示时,它开始播放视频。所以它不会同时在两个 PageView 中播放视频。任何人都可以帮助我吗?

import 'package:video_player/video_player.dart';
import 'package:flutter/material.dart';

void main() => runApp(MyApp());


class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MultiplePage(),
    );
  }
}

class MultiplePage extends StatefulWidget {
  @override
  _MultiplePageState createState() => _MultiplePageState();
}

class _MultiplePageState extends State<MultiplePage> {
  PageController …
Run Code Online (Sandbox Code Playgroud)

video-player flutter

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

标签 统计

file ×1

flutter ×1

fwrite ×1

go ×1

io ×1

performance ×1

video-player ×1