Skip to content

Commit

Permalink
- (#7627)
Browse files Browse the repository at this point in the history
  • Loading branch information
polina-c authored Apr 22, 2024
1 parent 30356f4 commit 3d89cb3
Show file tree
Hide file tree
Showing 6 changed files with 43 additions and 37 deletions.
1 change: 1 addition & 0 deletions packages/devtools_app/lib/devtools_app.dart
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ export 'src/shared/environment_parameters/environment_parameters_external.dart';
export 'src/shared/error_badge_manager.dart';
export 'src/shared/globals.dart';
export 'src/shared/http/http_request_data.dart';
export 'src/shared/memory/gc_stats.dart';
export 'src/shared/notifications.dart';
export 'src/shared/offline_data.dart';
export 'src/shared/preferences/preferences.dart';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import 'package:vm_service/vm_service.dart';

import '../../../../shared/memory/class_name.dart';
import '../../../../shared/memory/gc_stats.dart';
import '../../../../shared/table/table_data.dart';
import '../../../vm_developer/vm_service_private_extensions.dart';
import '../../shared/heap/class_filter.dart';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@ import '../../../../shared/analytics/analytics.dart' as ga;
import '../../../../shared/analytics/constants.dart' as gac;
import '../../../../shared/common_widgets.dart';
import '../../../../shared/globals.dart';
import '../../../../shared/memory/gc_stats.dart';
import '../../../../shared/primitives/byte_utils.dart';
import '../../../../shared/primitives/simple_items.dart';
import '../../../../shared/primitives/utils.dart';
import '../../../../shared/table/table.dart';
import '../../../../shared/table/table_controller.dart';
import '../../../../shared/table/table_data.dart';
import '../../../vm_developer/vm_service_private_extensions.dart';
import '../../shared/heap/class_filter.dart';
import '../../shared/primitives/simple_elements.dart';
import '../../shared/widgets/class_filter.dart';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import 'package:flutter/widgets.dart';
import 'package:vm_service/vm_service.dart';

import '../../shared/globals.dart';
import '../../shared/memory/gc_stats.dart';
import '../../shared/primitives/utils.dart';
import '../memory/panes/profile/profile_view.dart';

Expand Down Expand Up @@ -107,41 +108,6 @@ extension ClassHeapStatsPrivateViewExtension on ClassHeapStats {
: const HeapStats.empty();
}

class GCStats {
GCStats({
required this.heap,
required this.usage,
required this.capacity,
required this.collections,
required this.averageCollectionTime,
});

factory GCStats.parse({
required String heap,
required Map<String, dynamic> json,
}) {
final collections = json[collectionsKey] as int;
return GCStats(
heap: heap,
usage: json[usedKey],
capacity: json[capacityKey],
collections: collections,
averageCollectionTime: (json[timeKey] as num) * 1000 / collections,
);
}

static const usedKey = 'used';
static const capacityKey = 'capacity';
static const collectionsKey = 'collections';
static const timeKey = 'time';

final String heap;
final int usage;
final int capacity;
final int collections;
final double averageCollectionTime;
}

extension AllocationProfilePrivateViewExtension on AllocationProfile {
static const heapsKey = '_heaps';
static const newSpaceKey = 'new';
Expand Down
38 changes: 38 additions & 0 deletions packages/devtools_app/lib/src/shared/memory/gc_stats.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
// Copyright 2024 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

class GCStats {
GCStats({
required this.heap,
required this.usage,
required this.capacity,
required this.collections,
required this.averageCollectionTime,
});

factory GCStats.parse({
required String heap,
required Map<String, dynamic> json,
}) {
final collections = json[collectionsKey] as int;
return GCStats(
heap: heap,
usage: json[usedKey],
capacity: json[capacityKey],
collections: collections,
averageCollectionTime: (json[timeKey] as num) * 1000 / collections,
);
}

static const usedKey = 'used';
static const capacityKey = 'capacity';
static const collectionsKey = 'collections';
static const timeKey = 'time';

final String heap;
final int usage;
final int capacity;
final int collections;
final double averageCollectionTime;
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
import 'package:devtools_app/src/screens/memory/framework/memory_tabs.dart';
import 'package:devtools_app/src/screens/memory/panes/profile/model.dart';
import 'package:devtools_app/src/screens/memory/panes/profile/profile_pane_controller.dart';
import 'package:devtools_app/src/screens/vm_developer/vm_service_private_extensions.dart';
import 'package:devtools_app/src/shared/globals.dart';
import 'package:devtools_app/src/shared/memory/gc_stats.dart';
import 'package:devtools_app/src/shared/primitives/byte_utils.dart';
import 'package:devtools_app/src/shared/primitives/utils.dart';
import 'package:devtools_app/src/shared/table/table.dart';
Expand Down

0 comments on commit 3d89cb3

Please sign in to comment.