0
ответов

Что такое Type Object in Heap

Я знаю, что когда объекты создаются в Heap, у них также есть еще два дополнительных поля: Sync Block Index Указатель Type Object Итак, мне интересно, когда Type Object создается в памяти Heap и какие данные...
вопрос задан: 17 April 2012 03:04
0
ответов

Распаковка типов значений из объектов

Я пытался понять этот абзац, но почему-то не мог виртуализировать его в уме, кто-нибудь, пожалуйста, уточните его немного:Распаковка не является полной противоположностью заниматься боксом. Распаковка...
вопрос задан: 14 April 2012 02:03
0
ответов

Приведение C# к типу, допускающему значение NULL?

Помимо обычной скучной разницы между Cast и As, если я знаю, что яблоко является фруктом, поэтому я могу использовать (фруктовое) яблоко, и оно выдает исключение, если это не так, поскольку значение можно проверить против нуля, чтобы увидеть ...
вопрос задан: 8 April 2012 18:51
0
ответов

Модули, сборки, заголовки в CLR

Я читал CLR с C#3.0 и размышлял о сборках, модулях и заголовках, однако все усложнилось. Это то, что я понял, но было бы здорово, если бы кто-нибудь прояснил...
вопрос задан: 8 April 2012 18:08
0
ответов

Почему моя функция Close не вызывается?

class Program : CriticalFinalizerObject { static void Main(string[] args) { Program p = new Program(); TextWriterTraceListener listener = new ...
вопрос задан: 6 April 2012 14:09
0
ответов

Определение ограниченного параметра универсального типа в C#

В java можно ограничить параметр типа универсального типа. Это можно сделать так:class A{... } Таким образом, параметр типа для этого универсального класса A должен быть B или...
вопрос задан: 29 March 2012 20:44
0
ответов

Связь между классом System.Object и структурами

Я знаю, что мой вопрос кажется глупым, но я запутался. Я ценю, если кто-то разъяснит это для меня. Я знаю, что структуры, например. Int32 являются типами значений и создаются в стеке, в то время как классы...
вопрос задан: 23 March 2012 08:00
0
ответов

Использование свободной памяти .NET (как предотвратить перераспределение / освобождение памяти ОС)

В настоящее время я работаю над веб-сайтом, который широко использует кэшированные данные, чтобы избежать обзорные экскурсии. При запуске получаем "большой" граф (сотни тысяч разного вида объектов). Эти объекты...
вопрос задан: 21 March 2012 12:53
0
ответов

Что такое динамические методы и чем DynamicMethod отличается от MethodBuilder?

Я немного сталкивался с динамическими методами в коде C#, основанном на отражении, и мне еще предстоит выяснить, что именно они собой представляют. В частности, кажется, что есть класс DynamicMethod, который позволяет...
вопрос задан: 18 March 2012 12:58
0
ответов

Выравнивание массивов в .NET

Выровнены ли массивы в .NET по какой-либо границе? Если да, то к какому? И одинаково ли это для всех типов массивов?
вопрос задан: 16 March 2012 17:04
0
ответов

Перегрузка параметров универсального типа запрещена?

Это отчасти любопытство, а отчасти потому, что я просто пытался это использовать. Если у вас есть следующие определения, это не разрешено компилятором, потому что он говорит, что член уже определен. Что'...
вопрос задан: 8 March 2012 15:37
0
ответов

Почему частичные методы могут возвращать только тип void?

Какова причина /logic/obstacle того факта, что частичные методы могут иметь только возвращаемый тип void? спасибо
вопрос задан: 7 March 2012 11:25
0
ответов

Хостинг CLR: вызвать функцию с произвольной сигнатурой метода?

Мне нужно взять программу на C++, загрузить CLR и вызвать функцию в библиотеке C#. Функция, которую мне нужно вызвать, принимает COM-интерфейс в качестве параметра. Моя проблема в том, что интерфейс хостинга CLR только кажется...
вопрос задан: 7 March 2012 00:08
0
ответов

Почему простой List кажется медленнее, чем ArrayList?

Из любопытства я хотел проверить количество тактов, чтобы сравнить GenericList с ArrayList. И для приведенного ниже кода, когда я проверяю секундомеры, ArrayList кажется быстрее. Я делаю ...
вопрос задан: 5 March 2012 09:02
0
ответов

Почему компилятор C# не жалуется на переполнение из-за этого очевидного «плохого» приведения?

Я не могу понять, почему приведенный ниже код компилируется. общественное недействительное переполнение () { Int16 с = 32767; с = (Int16) (с + 1); } Во время компиляции очевидно, что (s+1) больше не является Int16, поскольку мы ...
вопрос задан: 4 March 2012 19:53
0
ответов

Обеспечивает ли оператор += в C# преобразование EXPLICIT или неявное CASTING?

Пример ниже компилируется: public static void Main() { Byte b = 255; b += 100; }, но этот пример ниже не работает public static void Main() { Byte b = 255; b = b + 100; ...
вопрос задан: 4 March 2012 17:29
0
ответов

Какие данные хранятся в «Указатель типа объекта» и «Индекс блока синхронизации»?

В CLR у каждого экземпляра есть 2 дополнительных поля для хранения некоторых данных для управления объектом: Указатель типа объекта Sync Block Index Можете ли вы вкратце объяснить, что они хранят внутри, и вкратце, как они...
вопрос задан: 3 March 2012 13:38
0
ответов

C# using ключевое слово, его правильное использование

какой из следующих вариантов лучше Достаточно ли одного оператора using? Вариант 1: использование (SqlConnection con = new SqlConnection (constring)) { using(SqlCommand cmd = new SqlCommand()) { ...
вопрос задан: 2 March 2012 18:10
0
ответов

Почему Struct не может быть производным от другой структуры?

Меня больше интересует ответ с точки зрения .Net и CLR: почему структура не может быть базовым классом другой структуры или наоборот?
вопрос задан: 2 March 2012 00:35
0
ответов

как ссылки на объекты C # представлены в памяти / во время выполнения (в CLR)?

Мне любопытно узнать, как ссылки на объекты C # представлены в памяти во время выполнения (в .NET CLR). На ум приходят следующие вопросы: сколько памяти занимает ссылка на объект? Неужели ...
вопрос задан: 29 February 2012 03:14
0
ответов

Создание рекурсивных универсальных типов замедляется по экспоненте, чем глубже они вложены. Почему?

Примечание: возможно, я выбрал неправильное слово в названии; возможно, я действительно говорю здесь о полиномиальном росте. См. Результат теста в конце этого вопроса. Начнем с этих трех ...
вопрос задан: 24 February 2012 08:35
0
ответов

Забирает ли «Блокировка» процессорное время?

У меня 6 потоков. Один из потоков попадает в какую-то область и включает «блокировку», а все другие потоки ждут и хотят войти в ту же область. Теперь, получат ли другие потоки время ЦП? ...
вопрос задан: 21 February 2012 11:10
0
ответов

Где я могу найти местоположение сгенерированного файла после выполнения Ngen?

Я сделал Ngen для исполняемого файла C #. Это было успешно, но я не могу понять, где находится сгенерированный файл на моем компьютере. MSDN говорит, что он должен быть в собственном кеше изображений, но все еще не могу понять, где он… ...
вопрос задан: 21 February 2012 09:32
0
ответов

Все ли приведения в C# приводят к боксированию/небоксированию

Мне интересно узнать, все ли приведения в C# приводят к боксированию, и если нет, то являются ли все приведения дорогостоящей операцией? Пример взят из Boxing and Unboxing (C# Programming Guide) int i = 123; // The ...
вопрос задан: 20 February 2012 18:15
0
ответов

«CLR обнаружила недопустимую программу» при использовании Enumerable.ToDictionary с расширением method

Коллега передал мне интересный образец кода, который выдает ошибку InvalidProgramException («CLR обнаружила недопустимую программу») при запуске. Проблема, кажется, возникает во время JIT, в том, что это ...
вопрос задан: 15 February 2012 12:00
0
ответов

Необычные паттерны сбора мусора

Я наблюдаю необычные паттерны сбора мусора в .net 4.0, которые я не могу объяснить, любой совет был бы признателен. В разные моменты времени во время выполнения моей программы счетчик сбора G2 начинает ...
вопрос задан: 8 February 2012 17:53
0
ответов

ILASM не устанавливает FileVersion

У меня есть файл .il, который я могу без проблем скомпилировать. Я могу четко назвать это и так без проблем. Но я не могу установить версию файла с помощью атрибута, как я ожидал. Как я могу ...
вопрос задан: 8 February 2012 11:08
0
ответов

Почему добавление типа возврата к методу возврата void вызывает исключение MissingMethodException

У меня есть приложение .NET, которое использует сборку (.dll), которая определяет некоторый метод: public void DoSomething () {// Do work} Предположим, эта сигнатура метода изменилась, чтобы включить ...
вопрос задан: 7 February 2012 15:02
0
ответов

Почему изменилось поведение BeforeFieldInit в .NET 4?

В C # 4 было изменено поведение типов без флага beforefieldinit, поэтому теперь инициализатор типа может вызывать перед первым использованием любого статического поля класса. Мои вопросы: почему есть C # / ....
вопрос задан: 7 February 2012 09:59
0
ответов

Почему выполнение свойства медленнее, чем выполнение поля или метода?

В среде CLR через CSharp, глава 10 «Свойства» Джефф Рихтер пишет: Для выполнения метода свойства может потребоваться много времени; доступ к полю всегда завершается немедленно. Распространенная причина использования свойств ...
вопрос задан: 6 February 2012 15:45