icon

それはダイアログをHTML化することで解決される

icon

更新よりはマシ

icon

oosako hanpa naitte

icon

ビルドの設定をミスったりとか、キャッシュの関係でまれに最新バージョンとしてダウンロードされるスクリプトのバージョンが最新になっていない場合があり、その場合は自動更新すると無限に更新が繰り返されることになりユーザーの操作が不可能になる

icon

将来的にダイアログはHTMLで書くのでそれは解決される

icon

リロードよりはマシ

icon

あと、自動でリロードすると無限ループに陥る可能性がある。

icon

最短でも数秒かかる

icon

開いてすぐじゃないからな

icon

ユーザーが何か操作してる途中かもしれないし

icon

勝手にリロードするのはちょっと

icon

Vueのサンプルコードに載っているレベルのシンプルな状態でテストしてリークがあるかどうか確認する

icon

暇な時にこれがVueの問題なのかMisskeyの問題なのか調べることにしよう

icon

コンポーネントを空にしてみるだとか、今度はトランジションを無効にしてみるとか、そうやってどんどん構造をシンプルにして条件を絞っていくアプローチが我ながら功を奏したな

icon

とにかくトランジションシステムを無効にすることでメモリリークが解消されたということだけは分かった

icon

Vueのバグの可能性もあるし、Misskeyが何か悪い可能性もある

icon

Vueのトランジションシステムのせいだ
(Vueが悪いのかMisskeyが悪いのかはまだわからない)

icon

原因わかった

icon

むむっ

icon

空にしてみたけど、依然としてメモリに残っているっぽい

icon

それでリークが無くなれば、原因がコンポーネントに内在していることが分かる

icon

投稿コンポーネントの中身を空にしてみてテストしてみるとか…

icon

非常に厄介

icon

うーーーーーーーーーーむ

icon

インスタンス自体がどこからか参照されている可能性はあるけどオブジェクトが参照されているかどうかはインスタンスの残存には関係しなさそう

icon

インスペクタで見てみるとインスタンス自体が残っている

icon

JavaScriptってある変数がJavaScriptのどこからか参照されているか否かって知る術ないよね?

icon

うーーむ、仮に参照されていたとしても、VueはあるデータがJSのどこからか参照されているかはわからないのでインスタンスがメモリから取り除かれるかどうかとは関係なさそうに思える

icon

Misskeyはそこまで管理していない
Vueが自動的に画面から消している

icon

デッキじゃなくても、普通のホームでもリークしてるからそっちでテストした方がシンプルで良さそう

icon

なぜメモリ上に残るのか突き止めないといけない

icon

Misskeyはバージョン情報をブラウザにキャッシュしているので、自動で更新はできない

icon

なぜメモリ上に残るのかは不明

icon

バグで無理そう

icon

タイムラインの投稿のインスタンスが画面から消えてもメモリ上に残存している可能性が高そう

icon

起動してからある程度の期間は少しずつ増えていきそう(タイムラインの最大表示数に達するまでは投稿が蓄積されるので)

icon

何か永続的に変数に入れて記録するような処理もデバッグモード時を除けば私の記憶にはない

icon

リークの原因として考えられるのはイベントハンドラの解除忘れくらいだけどそんなの見当たらないし

icon

うーーむなかなかメモリリークの原因を突き止めるのは…
Chromeのインスペクタ使えば分かるだろうか…

icon

aqzがこいしアイコンにしてくれない

icon

賑やかしという面もある

icon

仮にスクロールしないと見れないとしても、メディアタイムラインをクリックする手間に比べたらマシ

icon

スクロールしないでも見れそう

icon

ぱっと見て分かることが重要

icon

フォトは要りそう

icon

プロフィールに投稿と同じ構文(Misskey Flavored Markdown, MFM)が使えるようになりました。
また、デスクトップ版の新しいユーザーページのデザインをテスト中です。

icon

なのだわ

icon

アカウントのプロフィールに投稿と同じ構文使えるようにするか

icon

Go知らないけどよく批判されてるのは知ってる

icon


class Node
{
  public int elem;
  public Node next;

  public Node() : this(0, null) { }

  public Node(int val,Node next)
  {
    this.elem = val;
    this.next = next;
  }
}

class ListTest
{
  public Node head;

  public ListTest()
  {
    head = null;
  }

  public void Add(int val)
  {
    Node node = new Node(val, this.head);
    this.head = node;
  }
}

class Program
{
  static void Main(string[] args)
  {
    ListTest list = new ListTest();
    list.Add(15);
    list.Add(20);
    list.Add(30);
    list.Add(30);
    list.Add(15);

    for (Node n = list.head; n != null; n = n.next)
    {
      Console.Write("{0}\n", n.elem);
    }
  }
}

icon

まれによくやる

icon

大抵の言語ってガベコレありそう

icon

かわいい

icon

妹妹 は中国語読みだと めいめい だということが判った

icon

前者