don't know why, it is probably related to performance, and the compiled code should be very long.
The introduction of this compilation instruction also brings about a solution. For example, what should we do if we want to capture the deadlock EXCEPTION? No predefined exception name is available. Then we can use this compilation command.
Ora-60 errors mean deadlocks, so we can set an exception name for this error number, such as DEADLOCK_DETECTED. The syntax is as follows:
DECLAREDEADLOCK_DETECT
EXCEPTION;PRAGMA EXCEPTION_INIT (DEADLOCK_DETECTED,-60 );
Well, we can catch the EXCEPTION that handles the deadlock as below.
EXCEPTIONWHEN DEADLOCK_DETECTED THEN......
In this way, we can avoid using when others then to capture and handle this exception.
This compilation command can be used in almost all program declaration items, but pay attention to the scope of the action. In addition, remember to only give an exception name for an error code.
T
Operate the table that triggers the trigger in the trigger, and use the Pragma autonomous_transaction option.
15.1 why cannot I roll back an audit using autonomous transactions?
Generally, when a trigger is used to prohibit operations such as table update, if a log is logged, the trigger will roll back the log when an exception is thrown. Autonomous transactions can prevent this point.
Avoid mutating table
That is, to operate the table that triggers t
This is the parameter setting for the compiler, for the structure byte alignment setting, #pragma pack is the alignment of the specified data in memory.
#pragma pack (n) Action: The C compiler will be aligned by N bytes.#pragma pack () Effect: cancels custom byte alignment.
#pragma pack (push,1) function: means to set
#pragma comment ( comment-type [, "commentstring"]) The macro places a comment into the object file or executable file.Comment-typeis a predefined identifier that specifies the type of comment, which should becompiler,Exestr,lib,linkerOne.Commentstring is a string that provides additional information for Comment-type .Remarks:1, compiler: Place the compiler version or name to an object file, this option is ignored by linker.2, Exestr: In the future v
At the beginning of some unity scripts you can often see #pragma strict, #pragma downcast, #pragma implicit instructions, and some unity scripts do not have these instructions, what is the purpose of these instructions?#pragma strict, the meaning of this directive is forced input, that is, when declaring a variable, we
C90 brings a new member to the pre-processing instruction family: # pragma. Generally, we seldom see it.
# The role of Pragma is to provide specific compilation instructions for a specific compiler. These instructions are specific to one (or some) compiler, other compilers may not know the meaning of the directive or have different understandings of the directive, that is, # The implementation of
From: http://hi.baidu.com/baiyw920/blog/item/7092d5fcdca37c1108244d73.html
_ Pragma and # pragma have the same functions. The difference is:1. # pragma is a Preprocessor command; __pragma is a keyword.2. for options such as # pragma, warning, and once, they are separated by spaces. For options such as _
1 introIn the program, sometimes when we define the structure, we use #pragma pack (push,1) #pragma pack (POP) similar code to wrap the structure together.The general form is as follows:#pragma pack (push,1);struct A{} ;#pragma pack (POP);What is the purpose of doing this?Note: The following content is from the networ
# Pragma idata and # pragma udata in PIC:
Idata indicates the initialized data. Udata indicates that no data is initialized.
When a data block does not have enough space to store a continuous data (array), # pragma idata or # pragma udata can be used to define a new region for storing data blocks. However, #
# Pragma pack specifies the alignment of data in the memory,
In the C language, the structure is a composite data type, and its components can be both variables of basic data types (such as int, long, float, and so on, it can also be a data unit of a composite data type (such as an array, structure, and union. In the structure, the compiler allocates space for each member of the structure based on its natural alignment condition. Each member is stor
#Pragma是预处理指令, its role is to set the state of the compiler or instruct the compiler to perform certain actions.
#Pragma指令对每个编译器给出了一个方法, to give the host or operating system proprietary features, while maintaining complete compatibility with the C and C + + languages. By definition, the compilation instructions are proprietary to the machine or operating system and are different for each compiler.
The for
#pragma pack can be used to specify memory-aligned values for member variables of a C + + data structure (optional value is 1,2,4,8,16).This article focuses on using the pack instructions in your header files to pair them with memory alignment to avoid accidentally affecting the structure members of other source files in your project.If you affect the structure member memory alignment of other source files, then you calculate the size of those struct
Http://hi.baidu.com/zhanghuikl/blog/item/124ea7998108a9006e068c19.html
Emphasize one point:
#pragma packs (4)
typedef struct
{
Char buf[3];
Word A;
}KK;
#pragma pack ()
The principle of alignment is min (sizeof (word), 4) = 2, so it's 2-byte alignment, not the 4-byte alignment we think.
Here are three important points:1. Each member is aligned in its own way and can minimize the length of2. The default ali
Preface
#pragma指令为我们提供了让编译器执行某些特殊操作提供了一种方法. This instruction is useful for very large programs or programs that require special features of a particular compiler. #pragma指令的一般形式为: #pragma para, para as parameters. The command can be simple or complex.
#pragma命令中出现的命令集在不同的编译器上是不一样的, you must consult the document of the
Each implementation of C and C ++ supports some unique features for its host or operating system.
For example, some programs must precisely control the storage area where data is stored, or control the way a specific function accepts parameters.
# The Pragma command provides a method for each compiler to provide the unique features of the host or operating system while maintaining full compatibility with C and C ++ languages.
According to the definiti
Pragma preprocessing instructionsPragma instructionsWhen coding, we often use the # pragma command to set the compiler status or instruct the compiler to complete some specific actions.The following describes some frequently used counters of this command. I hope it will be helpful to you!1. Number of message partitions.MessageIt can be used in the compilation information output windowOutput the correspondin
Original link: http://www.cnblogs.com/s7vens/archive/2012/03/06/2382236.htmlPack aligns the specified byte boundaries to the members of a struct, union, class, and so on. Unlike the/ZP switch for compilation options, it is not for the entire project, but for modules only, such as a compilation unit.1. #pragma pack (show)Displays the current byte-aligned value in the form of a warning message.2. #pragma pack
#pragma预处理命令The most complex preprocessing directives #pragma可以说是C + +, the following are the most commonly used #pragma directives:#pragma comment (lib, "XXX.lib")Indicates that the link XXX.lib this library, and is written in the project settings XXX.lib the same effect.#pragma
Pragma preprocessing instructions
Pragma instructions
CompileProgramWe often use the # pragma command to set the compiler status or instruct the compiler to complete some specific actions.
The following describes some common parameters of this command. I hope it will be helpful to you!
1. Message parameters.
Message
It can be used in the compilatio
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.