Описание тега unsafe

In C# or Rust, the unsafe keyword marks code able to work directly with memory pointers, bypassing some of the language's safety checks. In Java, `sun.misc.Unsafe` is a special class performing low-level, unsafe operations.
5 ответов

C#: использование типов указателей в качестве полей?

В C# можно объявить структуру (или класс), которая имеет член типа указателя, например: unsafe struct Node { public Node* NextNode; } Это когда-нибудь безопасно? unsafe флаг..) использовать эту конструкцию? Я имею в виду долгосрочное хранение в куче…
09 ноя '09 в 21:09
1 ответ

Сканирование растрового изображения0, отключение шага

Я пишу программу, которая применяет xored delta's к существующему растровому изображению. Проблема, с которой я столкнулся, заключается в том, что в первой итерации кажется, что у вас 5 пикселей, что приводит к некоторым интересным цветовым эффектам…
29 авг '14 в 14:35
3 ответа

Perl-потоки и небезопасные сигналы

Поэтому недавно я захотел использовать одну из моих программ на Perl, чтобы увеличить ее скорость. Взяв список веб-сайтов, я хотел создать ветку для каждого URL-адреса и получить содержимое каждого веб-сайта, а затем поискать описание компании на ст…
30 авг '10 в 19:22
1 ответ

angular2 и window.URL.createObjectURL

Я использую window.URL.createObjectURL для создания ссылки blob: http для предварительного просмотра выбранного изображения в теге img: <img src=""{{itemPhoto}}"" /> itemPhoto - это поле, определенное в компоненте и назначаемое при выборе файл…
27 сен '16 в 21:14
2 ответа

Как запустить код на jre9, который был скомпилирован с jdk8 и использовать Unsafe

У меня есть код, который был скомпилирован с jdk8 в качестве цели и источника для Java 1.8 и использую Unsafe. Я попытался запустить эту программу с jdk9, но она не работает со следующим исключением: java.lang.NoSuchMethodError: sun.misc.Unsafe.getB…
27 мар '18 в 13:19
2 ответа

Небезопасные операции Java с полями со списком

Я знаю, что этот вопрос уже задавался, но я не могу найти решение проблемы со списком. У меня есть следующий код: ... JComboBox startingCombo = new JComboBox(); startingCombo.setModel(new DefaultComboBoxModel(new String[] {"USD", "EUR", "GBP"})); ..…
01 апр '16 в 05:47
1 ответ

Замена C# метода объявления типа, который реализует интерфейс и наследуется от базы

Я пытаюсь поменять содержимое метода во время выполнения в целях модульного тестирования унаследованного кода. Я работал с этими SO ответами; Динамически заменить содержимое метода C#? Как заменить указатель на переопределенный (виртуальный) метод в…
23 май '17 в 08:13
5 ответов

Почему *(int*)0=0 не вызывает нарушения прав доступа?

В образовательных целях я пишу набор методов, которые вызывают исключения во время выполнения в C#, чтобы понять, что это за исключения и что их вызывает. Сейчас я работаю с программами, которые вызывают AccessViolationException, Самый очевидный спо…
30 дек '11 в 15:34
2 ответа

Компиляция небезопасного кода на C#

У меня есть небольшой класс C# с несколькими небезопасными методами. Есть ли способ указать опцию "/unsafe" декларативно в исходном коде C# (с #pragma или как-нибудь еще) только для контекста исходного файла класса? Я не хотел бы создавать отдельную…
24 сен '13 в 15:48
5 ответов

Истинная небезопасная производительность кода

Я понимаю, что небезопасный код больше подходит для доступа к таким вещам, как API Windows и выполнения небезопасных преобразований типов, чем для написания более производительного кода, но я хотел бы спросить вас, замечали ли вы когда-либо значител…
21 мар '11 в 07:18
2 ответа

Действительно ли "исправлено" гарантирует что-либо при передаче указателей (например, int[]) в DLL?

Я попытался найти это, но ничего не нашел, однако при передаче int[] в встроенную функцию DLL в качестве указателя, не остается ли еще опасность, что DLL может сохранить ссылку на указатель, а затем попытаться получить доступ к нему снова после того…
05 ноя '09 в 21:40
3 ответа

Самый быстрый способ работать с отдельными байтами в int

Я обнаружил, что мое приложение тратит 25% своего времени, делая это в цикле: private static int Diff (int c0, int c1) { unsafe { byte* pc0 = (byte*) &c0; byte* pc1 = (byte*) &c1; int d0 = pc0[0] - pc1[0]; int d1 = pc0[1] - pc1[1]; int d2 = …
02 май '15 в 22:30
2 ответа

Какой лучший способ конвертировать [[T; 4]; 3] в [Т; 12]?

Как я понимаю, [[T; 4]; 3] и [T; 12] имеют одинаковое расположение в памяти. Каков наилучший способ преобразовать значение между этими типами? Могу ли я преобразовать ссылку на одну ссылку на другую? Могу ли я избежать копирования всех элементов? Ну…
13 дек '16 в 01:30
1 ответ

Привести не указатель на тип указателя в фиксированном выражении

Я немного новичок в небезопасной стороне C#, так что прости меня, если я упустил что-то очевидное здесь. Я просматриваю некоторый код с использованием.NET Reflector, чтобы понять некоторую реализацию реализации Oculus Rift в C#, но я получаю кучу ош…
18 авг '15 в 08:44
0 ответов

Макет процесса Android

Я наткнулся на этот сайт, а также здесь и здесь есть некоторые дискуссии на эту тему, но я так и не смог найти ответ. Было заявлено, что Dalvik имеет отдельные стеки для нативного и Java-кода, в то время как ART имеет унифицированный стек для нативн…
17 сен '18 в 00:39
0 ответов

Как правильно индексировать поля в структуре по индексу

У меня есть следующий код. public class BoxCorners { public Vector3 V000; public Vector3 V001; public Vector3 V010; public Vector3 V011; public Vector3 V100; public Vector3 V101; public Vector3 V110; public Vector3 V111; public Vector3 Index(int i) …
05 июл '17 в 07:58
1 ответ

C# небезопасные поля указателя

Это сломается? Он компилируется нормально, но на основе показаний, я не уверен, гарантировано ли, что _ptRef всегда будет указывать на структуру, указанную в конструкторе. Я думаю, под 'break' я имею в виду... GC переместит структуру, на которую ука…
25 май '12 в 03:05
4 ответа

pInvoke метод для GUID в C#

Я новичок в программировании на C# и USB. У меня есть несколько проблем с этим. Я не могу общаться с ним. Вот как я объявляю GUID, чтобы получить GUID. Я создаю новый экземпляр GUID, а затем вызываю HidGuid, чтобы получить Guid. Ниже приведены метод…
02 окт '12 в 15:29
1 ответ

"Требуется отсутствующий компилятор" в проекте Windows CE

Я пытаюсь создать решение, которое я скачал с нашего SVN-сервера. Однако я получаю странную ошибку: "Отсутствует компилятор, необходимый член 'System.Runtime.CompilerServices.UnsafeValueTypeAttribute..ctor'". Проект, который вызывает ошибку, являетс…
16 июн '15 в 14:28
1 ответ

Как вызвать небезопасный код из ASP.NET xproj

Сегодня я создал библиотеку классов с новым Class Library (Package) шаблоны в Visual Studio 2015. Очевидно, для сборки пакета используется новый модный формат проекта ASP.NET xproj. Хотя это нормально для меня, как я могу вызвать небезопасный код из…
25 авг '15 в 18:46